ホームページ > 記事 > ウェブフロントエンド > node.js_node.js での querystring.parse メソッドの使用手順
メソッドの説明:
文字列をオブジェクトに変換します。率直に言うと、実際には URL 上のパラメータ文字列を配列オブジェクトに変換します。 (例を見れば分かります)
文法:
パラメータを受信します:
str 変換される文字列
sep 区切り文字を設定します。デフォルトは「&」です
eq 割り当て文字を設定します。デフォルトは「=」です
[オプション] maxKeys 許容される文字列の最大長、デフォルトは 1000
例:
ソースコード:
// key=val 文字列を解析します。
QueryString.parse = QueryString.decode = function(qs, sep, eq, options) {
sep = sep || '&';
eq = eq '=';
var obj = {};
if (!util.isString(qs) || qs.length === 0) {
obj を返します;
}
var regexp = / /g;
qs = qs.split(sep);
var maxKeys = 1000;
if (options && util.isNumber(options.maxKeys)) {
maxKeys = options.maxKeys;
}
var len = qs.length;
// maxKeys
if (maxKeys > 0 && len > maxKeys) {
len = maxKeys;
}
for (var i = 0; i
var x = qs[i].replace(regexp, ' '),
idx = x.indexOf(eq),
kstr、vstr、k、v;
If (idx >= 0) {
kstr = x.substr(0, idx);
vstr = x.substr(idx 1);
} else {
kstr = x;
vstr = '';
}
{
を試してください
k = decodeURIComponent(kstr);
v = decodeURIComponent(vstr);
} キャッチ (e) {
k = QueryString.unescape(kstr, true);
v = QueryString.unescape(vstr, true);
}
If (!hasOwnProperty(obj, k)) {
obj[k] = v;
else if (util.isArray(obj[k])) {
obj[k].push(v);
} else {
obj[k] = [obj[k], v];
}
}
obj を返します;
};