网络编程 
首页 > 网络编程 > 浏览文章

Node.js API详解之 querystring用法实例分析

(编辑:jimmy 日期: 2024/12/26 浏览:3 次 )

本文实例讲述了Node.js API详解之 querystring用法。分享给大家供大家参考,具体如下:

Node.js API详解之 querystring

querystring模块提供了一些实用函数,用于解析与格式换URL查询字符串
通过 const querystring = require(‘querystring'); 的方式引用querystrings模块

目录:

  • querystring.escape(str)
  • querystring.unescape(str)
  • querystring.parse(str[, sep[, eq[, options]]])
  • querystring.stringify(obj[, sep[, eq[, options]]])

querystring.escape(str)

说明:

对给定的 str 进行 URL 编码

demo:

let url= "www.baidu.com";
 
console.log(querystring.escape(url));
//www.baidu.com%3Fp%3Dxiaoqiang%26n%3D%E5%B0%8F%E5%BC%BA

querystring.unescape(str)

说明:

对给定的 str 进行解码

demo:

let url= "www.baidu.com%3Fp%3Dxiaoqiang%26n%3D%E5%B0%8F%E5%BC%BA";
 
console.log(querystring.unescape(url));
//www.baidu.com"font-size: medium">querystring.parse(str[, sep[, eq[, options]]])

说明:

该方法会把一个 URL 查询字符串 str 解析成一个键值对的集合。
str: 要解析的URL查询字符串window.location.search
sep: 用于界定serch中键值对的子字符串。默认为 ‘&'
eq: 用于界定serch中键与值的子字符串。默认为 ‘='
options:编码选项
decodeURIComponent:解码时使用的函数,默认:querystring.unescape()
maxKeys:指定要解析的键的最大数量。默认为 1000。指定为 0 则不限制

demo:

var search = "nickName=xiaoqiang&name=小强&age=23&area=huhot";
 
var params = querystring.parse(search, '&', '=', { decodeURIComponent: querystring.unescape });
 
console.log(params);
//{ nickName: 'xiaoqiang', name: '小强', age: '23', area: 'huhot' }

querystring.stringify(obj[, sep[, eq[, options]]])

说明:

该方法通过遍历给定的 obj 对象的自身属性,生成 URL 查询字符串。
obj: 要序列化成 URL 查询字符串的对象
sep: 用于界定serch中键值对的子字符串。默认为 ‘&'
eq: 用于界定serch中键与值的子字符串。默认为 ‘='
options:编码选项
encodeURIComponent:解码时使用的函数,默认:querystring.escape()

demo:

var searchObj = { nickName: 'xiaoqiang', name: '小强', age: '23', area: 'huhot' };
 
var search = querystring.stringify(searchObj, '&', '=', { decodeURIComponent: querystring.escape });
 
console.log(search);
//nickName=xiaoqiang&name=%E5%B0%8F%E5%BC%BA&age=23&area=huhot

希望本文所述对大家node.js程序设计有所帮助。

上一篇:JS实现手写 forEach算法示例
下一篇:Node.js API详解之 string_decoder用法实例分析
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。