OSDN Git Service

Version 0.6.169, add doc comment.
[pettanr/clientJs.git] / 0.6.x / js / 01_core / 08_XURL.js
index a75aaaf..0eaccab 100644 (file)
@@ -15,7 +15,7 @@ var X_URL_BASE_URL = ( function( parts ){
        \r
        X_URL_IS_LOCAL = X_URL_IS_FILE || location.hostname === 'localhost' || location.hostname === '127.0.0.1',\r
        \r
-       X_URL_PARAMS = X_URL_ParamToObj( location.search.slice( 1 ) );\r
+       X_URL_PARAMS = X_URL_paramToObj( location.search.slice( 1 ) );\r
 \r
 // ------------------------------------------------------------------------- //\r
 // --- interface ----------------------------------------------------------- //\r
@@ -26,19 +26,37 @@ var X_URL_BASE_URL = ( function( parts ){
  * @alias X.URL\r
  */\r
 X[ 'URL' ] = {\r
-\r
+       /**\r
+        * ベースurl\r
+        * @alias X.URL.BASE_URL\r
+        * @type {string}\r
+        */\r
        'BASE_URL'       : X_URL_BASE_URL,\r
-       \r
+       /**\r
+        * ファイルプロトコルである。\r
+        * @alias X.URL.IS_FILE\r
+        * @type {boolean}\r
+        */\r
        'IS_FILE'        : X_URL_IS_FILE,\r
-       \r
+       /**\r
+        * ローカルホストである。\r
+        * @alias X.URL.IS_LOCAL\r
+        * @type {boolean}\r
+        */\r
        'IS_LOCAL'       : X_URL_IS_LOCAL,\r
-       \r
+       /**\r
+        * url パラメータを object に格納したもの。\r
+        * @alias X.URL.PARAMS\r
+        * @type {object}\r
+        */\r
        'PARAMS'         : X_URL_PARAMS,\r
-       \r
+\r
        'create'         : X_URL_create,\r
        \r
        'toAbsolutePath' : X_URL_toAbsolutePath,\r
        \r
+       'objToParam'     : X_URL_objToParam,\r
+       \r
        'isSameDomain'   : X_URL_isSameDomain,\r
        \r
        'isSameProtocol' : X_URL_isSameProtocol,\r
@@ -53,10 +71,12 @@ X[ 'URL' ] = {
 // ------------------------------------------------------------------------- //\r
 // --- implements ---------------------------------------------------------- //\r
 // ------------------------------------------------------------------------- //\r
-/*\r
- * original\r
- * AS3で相対パスを絶対パスに変換する\r
- * http://www.shin-go.net/motionlab/?p=449\r
+/**\r
+ * <p>絶対 url にして返します。\r
+ * <p>original AS3で相対パスを絶対パスに変換する http://www.shin-go.net/motionlab/?p=449\r
+ * @alias X.URL.toAbsolutePath\r
+ * @param {string}\r
+ * @return {string} url\r
  */\r
 function X_URL_toAbsolutePath( path ){\r
        var s  = '/',\r
@@ -81,29 +101,59 @@ function X_URL_toAbsolutePath( path ){
        };\r
        return [ _ary[ 0 ], ss, ary.join( s ), s, path ].join( '' );\r
 };\r
-\r
+/**\r
+ * 同一ドメインか?\r
+ * @alias X.URL.isSameDomain\r
+ * @param {string}\r
+ * @return {boolean}\r
+ */\r
 function X_URL_isSameDomain( path ){\r
        path = X_URL_cleanup( X_URL_toAbsolutePath( path ) );\r
        return path === X_URL_BASE_URL || path.indexOf( X_URL_BASE_URL + '/' ) === 0;\r
 };\r
-\r
+/**\r
+ * 同一プロトコルか?\r
+ * @alias X.URL.isSameProtocol\r
+ * @param {string}\r
+ * @return {boolean}\r
+ */\r
 function X_URL_isSameProtocol( path ){\r
        return X_URL_toAbsolutePath( path ).indexOf( location.protocol ) === 0;\r
 };\r
-\r
+/**\r
+ * ローカルリソースへのアクセスか?\r
+ * @alias X.URL.isLocal\r
+ * @param {string}\r
+ * @return {boolean}\r
+ */\r
 function X_URL_isLocal( path ){\r
        return X_URL_toAbsolutePath( path ).indexOf( 'file:' ) === 0;\r
 };\r
-\r
+/**\r
+ * url パラメータとハッシュフラグメントを削除します。\r
+ * @alias X.URL.cleanup\r
+ * @param {string}\r
+ * @return {boolean}\r
+ */\r
 function X_URL_cleanup( path ){\r
        return path.split( '?' )[ 0 ].split( '#' )[ 0 ];\r
 };\r
-\r
+/**\r
+ * 拡張子を返します。\r
+ * @alias X.URL.getEXT\r
+ * @param {string}\r
+ * @return {string}\r
+ */\r
 function X_URL_getEXT( path ){\r
        path = X_URL_cleanup( path ).split( '.' );\r
        return path.length ? path.pop() : '';\r
 };\r
-\r
+/**\r
+ * object を url パラメータにします。値が object の場合、データは失われます。\r
+ * @alias X.URL.objToParam\r
+ * @param {object}\r
+ * @return {string}\r
+ */\r
 function X_URL_objToParam( data ){\r
        var result = [], k, n = -1;\r
        for( k in data ){\r
@@ -114,14 +164,20 @@ function X_URL_objToParam( data ){
        }\r
        return result.join( '' );\r
 };\r
-\r
+/**\r
+ * url にパラメータを加えた url を返します。\r
+ * @alias X.URL.create\r
+ * @param {string}\r
+ * @param {object}\r
+ * @return {string}\r
+ */\r
 function X_URL_create( url, params ){\r
        if( !X_Type_isObject( params ) || !( params = X_URL_objToParam( params ) ) ) return url;\r
        \r
        return url + ( url.indexOf( '?' ) !== -1 ? '&' : '?' ) + params;\r
 };\r
 \r
-function X_URL_ParamToObj( str ){\r
+function X_URL_paramToObj( str ){\r
        var i   = 0,\r
                obj = {},\r
                parts, l, pair, p;\r