X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=0.6.x%2Fjs%2F01_core%2F06_XURL.js;h=a75aaaff76b1155b7436b7cd22642c0263c9fbec;hb=0a4e04fb0af6e1b2e452d1a8c0822e723d32a0ee;hp=daa6a8e01d4bc0609b769067739cdc0538149a60;hpb=094b0536bafe5efd70540698cf74ab13ece03ebb;p=pettanr%2FclientJs.git diff --git a/0.6.x/js/01_core/06_XURL.js b/0.6.x/js/01_core/06_XURL.js index daa6a8e..a75aaaf 100644 --- a/0.6.x/js/01_core/06_XURL.js +++ b/0.6.x/js/01_core/06_XURL.js @@ -35,6 +35,8 @@ X[ 'URL' ] = { 'PARAMS' : X_URL_PARAMS, + 'create' : X_URL_create, + 'toAbsolutePath' : X_URL_toAbsolutePath, 'isSameDomain' : X_URL_isSameDomain, @@ -113,16 +115,20 @@ function X_URL_objToParam( data ){ return result.join( '' ); }; +function X_URL_create( url, params ){ + if( !X_Type_isObject( params ) || !( params = X_URL_objToParam( params ) ) ) return url; + + return url + ( url.indexOf( '?' ) !== -1 ? '&' : '?' ) + params; +}; + function X_URL_ParamToObj( str ){ - var parts = str.split( '&' ), - i = 0, - l = parts.length, - obj = {}, - pair, p; + var i = 0, + obj = {}, + parts, l, pair, p; if( !str ) return obj; - for( ; i < l; ++i ){ + for( parts = str.split( '&' ), l = parts.length; i < l; ++i ){ pair = parts[ i ]; p = pair.indexOf( '=' ); if( p === -1 ){