node js 从零学习(4)

本文深入解析Node.js中QueryString模块的功能与使用方法,包括字符串的编码与解码,以及对象与字符串之间的转换过程,适合Node.js初学者快速掌握。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

querystring(查询字符串)

之前已经介绍了 http url 部分基础内容 这次进行介绍 查询字符串的相关基础

  • 第一步
    内置模块,直接引入
const querystring = require('querystring');
  1. querystring.escape(str)/querystring.unescape(str) 两个方法
    简单讲就是编码解码
    官方解释

    querystring.escape()方法以对 URL 查询字符串的特定要求进行了优化的方式对给定的 str 执行 URL 百分比编码。
    querystring.unescape() 方法在给定的 str 上执行 URL 百分比编码字符的解码。

但最好的理解就是实例了

const querystring = require('querystring');
var str = querystring.escape('www.heihei.org/啦乱七八啊哦');
console.log(str);
console.log(querystring.unescape(str));

结果

www.heihei.org%2F%E5%95%A6%E4%B9%B1%E4%B8%83%E5%85%AB%E5%95%8A%E5%93%A6
www.heihei.org/啦乱七八啊哦
  1. querystring.parse(str[, sep[, eq[, options]]])/querystring.stringify(obj[, sep[, eq[, options]]])
    这两个方法也是可逆的,可以一起记忆,parse是字符串转对象,stringify是对象转字符串
    参数也很相似 其中

    • sep是字符串中分隔键值对的子字符串。默认值: ‘&’
    • 字符串中分隔键和值的子字符串。默认值: ‘=’

    也就是说如果我们要来回转换时,这两个参数要一致,我们知道当我们用地址栏来传递数据时,都是?拼接类似?name=aaa&age=14 正好与我们的默认值一样因此如果没有特殊需要我们也不需要更改

    例子

const querystring = require('querystring');
querystring.stringify({name:'xuexi',course:['nodejs','vue.js'],from:''})
querystring.stringify({name:'xuexi',course:['nodejs','vue.js'],from:''},',')
querystring.stringify({name:'xuexi',course:['nodejs','vue.js'],from:''},',',':')
querystring.parse('name=xuexi&course=nodejs&course=vue.js&from=')
querystring.parse('name=xuexi&course=nodejs&course=vue.js&from=','&')
querystring.parse('name=xuexi&course=nodejs&course=vue.js&from=',',')
querystring.parse('name=xuexi,course=nodejs,course=vue.js,from=')
querystring.parse('name=xuexi,course=nodejs,course=vue.js,from=', ',')
querystring.parse('name:xuexi,course:nodejs,course:vue.js,from:',',',':')
querystring. escape({from:’北京’})
querystring.unescape('%E5%8C%97%E4%BA%AC)

通过例子 我们可以很快掌握规律 至于option参数可以去官网看API 暂时用不到它 就不做专门讲解
按顺序我们已经掌握的关键字有三个 http url querystring 可能有些第一次借出nodejs 的老铁不清楚我们到底要做些什么 不要急后续我们会将这些结合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值