对querystring.parse方法在Node.js的使用说明

方法显示:

将字符串转换为对象。事实上,参数是将URL上的参数串成数组对象。

Grammar:

复制代码代码如下所示:

Querystring.parse(STR,{月},{情商},{选项})



接收参数:

转换字符串

SEP设置分隔符,默认值是''

EQ集赋值操作符,默认值是=

{选项} maxkeys可以接受一个字符串的最大长度,默认值为1000

实例uff1a

复制代码代码如下所示:

Querystring.parse('foo = barbaz = quxbaz = quuxcorge)

返回

{ foo:'bar,巴兹:{ 'qux ','quux},峡谷:}



源代码 uff1a

复制代码代码如下所示:

键=字符串。解析

querystring.parse = querystring.decode =功能(QS、SEP、情商、期权){

SEP = SEP | |;

情商EQ = = | |;

var obj = { };

如果(!Util.isString(QS)| | { qs.length = = = 0)

返回对象;

}

VaR regexp = / + / G;

QS = qs.split(SEP);

无功maxkeys = 1000;

如果(util.isnumber选项(选项。maxkeys)){

maxkeys = options.maxkeys;

}

VaR len = qs.length;

意味着 / / maxkeys <= 0我们不应该限制键数

如果(maxkeys > 0 Len > maxkeys){

maxkeys len =;

}

对于(var i = 0;i;<;+ i){

var x = QS {我}。取代(regexp,% 20),

IDX = x.indexof(EQ),

Kstr,Vstr,k,v;

如果(IDX > = 0){

kstr = x.substr(0,IDX);

Vstr = x.substr(idx + 1);

{人}

kstr = x;

Vstr =;

}

{试

K = decodeuricomponent(kstr);

V = decodeuricomponent(Vstr);

} catch(e){

K = querystring.unescape(kstr,真的);

V = querystring.unescape(Vstr,真的);

}

如果(!HasOwnProperty(obj,k)){

obj { } = V K;

} else if(util.isarray(obj {克})){

obj { k }推(V);

{人}

obj { } = { obj { k k V } };

}

}

返回对象;

};