node.js中的querystring.stringify方法使用说明

时间:2021-05-26

方法说明:

将对象转换成字符串,字符串里多个参数将用 ‘&' 分隔,将用 ‘=' 赋值。

这个函数的操作和 querystring.parse() 是相反的,具体可以看一下例子就了解了。

语法:

复制代码 代码如下:
querystring.stringify(obj, [sep], [eq])

接收参数:

obj 欲转换的对象
sep 设置分隔符,默认为 ‘&'
eq 设置赋值符,默认为 ‘='

例子:

复制代码 代码如下:
querystring.stringify({ foo: 'bar', baz: ['qux', 'quux'], corge: '' })
// returns
'foo=bar&baz=qux&baz=quux&corge='

querystring.stringify({foo: 'bar', baz: 'qux'}, ';', ':')
// returns
'foo:bar;baz:qux'

源码:

复制代码 代码如下:
QueryString.stringify = QueryString.encode = function(obj, sep, eq, name) {
sep = sep || '&';
eq = eq || '=';
if (util.isNull(obj)) {
obj = undefined;
}
if (util.isObject(obj)) {
return Object.keys(obj).map(function(k) {
var ks = QueryString.escape(stringifyPrimitive(k)) + eq;
if (util.isArray(obj[k])) {
return obj[k].map(function(v) {
return ks + QueryString.escape(stringifyPrimitive(v));
}).join(sep);
} else {
return ks + QueryString.escape(stringifyPrimitive(obj[k]));
}
}).join(sep);
}
if (!name) return '';
return QueryString.escape(stringifyPrimitive(name)) + eq +
QueryString.escape(stringifyPrimitive(obj));
};

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章