方法说明:

将字符串转成对象。说白了其实就是把url上带的参数串转成数组对象。(看例子就知道咯)

语法:

复制代码代码如下:

querystring.parse(str, [sep], [eq], [options])

接收参数:

str                                         欲转换的字符串

sep                                       设置分隔符,默认为 ‘&'

eq                                         设置赋值符,默认为 ‘='

[options]  maxKeys             可接受字符串的最大长度,默认为1000

例子:

复制代码代码如下:

querystring.parse('foo=bar&baz=qux&baz=quux&corge')
// returns
{ foo: 'bar', baz: ['qux', 'quux'], corge: '' }

源码:

复制代码代码如下:

// Parse a key=val string.
QueryString.parse = QueryString.decode = function(qs, sep, eq, options) {
  sep = sep || '&';
  eq = eq || '=';
  var obj = {};
  if (!util.isString(qs) || qs.length === 0) {
    return 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 <= 0 means that we should not limit keys count
  if (maxKeys > 0 && len > maxKeys) {
    len = maxKeys;
  }
  for (var i = 0; i < len; ++i) {
    var x = qs[i].replace(regexp, '%20'),
        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 = '';
    }
    try {
      k = decodeURIComponent(kstr);
      v = decodeURIComponent(vstr);
    } catch (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];
    }
  }
  return obj;
};

注:自己笔记转载自他人,如有侵权联系删除

node.js字符串转对象querystring.parse方法使用说明相关推荐

  1. php querystring使用,node.js中的querystring.parse方法使用说明_node.js

    方法说明: 将字符串转成对象.说白了其实就是把url上带的参数串转成数组对象.(看例子就知道咯) 语法: 代码如下: querystring.parse(str, [sep], [eq], [opti ...

  2. js字符串转换为对象格式的3种方法

    背景: js字符串转换为对象格式,一般都会想到JSON.parse(),但数据不是标准的 JSON 格式的时候会解析出错,这时候就可以使用eval() 函数.new Function()方法来转换. ...

  3. JS字符串转对象,对象转字符串方法

    字符串转对象 JSON.parse() 对象转字符串 JSON.stringify()

  4. Node.js Buffers缓存对象

    Node.js Buffers缓存对象 纯粹的 Javascript 对 Unicode 很友好,但是操作二进制数据就不怎么在行了.处理 TCP 数据流或者文件时,必须要操作二进制数据流. node ...

  5. 基于Node.js实现压缩和解压缩的方法

    本篇文章主要介绍了基于Node.js实现压缩和解压缩的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 压缩格式 zip 和 gzip 是两种我们最常见到的压缩格式,当 ...

  6. js 字符串拼接的4种方法

    一.使用连接符 + 把想要连接的字符串串起来 let shy = '帅哥' let a = '我是' + shy console.log(a) // 我是帅哥 二.模板字符串 模板字符串(templa ...

  7. JS字符串替换函数全部替换方法

    JS字符串替换函数全部替换方法 正则表达式浏览器HTML  JS字符串替换函数:Replace("字符串1″, "字符串2″), 1.我们都知道JS中字符串替换函数是Replace ...

  8. js字符串转对象 js对象转字符串 js字符串与对象互转

    上图为转换前后对比 平时页面链接传参为对象,我们需要转为字符串在传值,取值时又得转为对象,所以比较常用,就整理下吧! 对象转为字符串 JSON.stringify(obj) json字符串转为对象 J ...

  9. js设置html打印不分页,JS 使用 window对象的print方法实现分页打印功能

    最近做项目用到了web在线打印功能,经研究使用了JS自身支持的Window对象的打印方法,此种方法兼容性比较好,在IE和火狐浏览器下使用都没有问题. 1.但是网上好多案例都不支持分页功能,最后通过CS ...

最新文章

  1. Gartner:为什么元宇宙商业离我们还很遥远?
  2. Patchwork间谍组织将目标扩大至政府
  3. 第4课 防卫导弹(第十章 动态规划--DP)
  4. python开发游戏脚本_Python开发游戏开服脚本
  5. 【数据结构和算法笔记】用c语言实现栈
  6. FISCO BCOS PBFT网络优化
  7. Java数据库连接详解
  8. Windows安装杜比音效驱动
  9. PS、Ai、Pr等如何修改安装位置的问题
  10. 计算机毕业设计PHP图书馆图书借阅管理系统
  11. 【ACM】- PAT. A1064 Complete Binary Serach Tree 【BST】
  12. excel自动求和_excel工作表的行或列怎么自动求和
  13. 吃饭?睡觉?打豆豆?
  14. at指令 meid_【技术分享】使用AT调制解调器命令解锁LG Android屏幕
  15. 什么是最小可行产品 MVP?
  16. C++ 打印表格到屏幕或文件
  17. 简单介绍一下web开发中用到的一些技术
  18. UE4 使用自发光材质作为烘焙光源
  19. 无法访问eclipse官网?镜像源可以帮你
  20. 世界最著名的十大悖论

热门文章

  1. 转发:达尔优87键铝合金版灯光使用说明书
  2. 动图ps在html不动了,PS修改了GIF动态图文字点了播放还是不动怎么回事?如何解决?...
  3. 计算机应用技术读后感1500,计算机应用文摘读后感1000字
  4. C语言乘于强制转换哪个优先级高,C语言中关于强制类型转换问题
  5. python 定时播放音乐_python写的定时播放音乐
  6. 海口学计算机,海口计算机的学校排名-的技校哪的好
  7. python 科幻片采集
  8. 有下拉条时截网页全图方法(Chrome)
  9. 微机智能操控及无线测温等产品在奉贤药明二期机电安装工程项目的应用(安科瑞-须静燕)
  10. java settext 用不了_我一直无法解决方法'setText(java.lang.string)错误