服务器之家:专注于服务器技术及软件下载分享
分类导航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服务器之家 - 编程语言 - JavaScript - node.js中的querystring.stringify方法使用说明

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

2021-05-10 16:23junjie JavaScript

这篇文章主要介绍了node.js中的querystring.stringify方法使用说明,本文介绍了querystring.stringify的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下

方法说明:

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

这个函数的操作和 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));
};

延伸 · 阅读

精彩推荐