querystring处理参数小利器
相信上一章的讲解,相信大家对url地址有一个更直观的认识,在url解析的时候可以用querystring这样一个module替换,然后对这个
query集成一个对象,这里不管是前端开发还是后端开发,都常常,常常碰到的一个场景,就是参数的处理,我们需要传递不同用途的参数
添加到url地址中,发送给服务器,而服务器拿到的是是一个字符串的这样的参数串,它不知道个数,也不知道参数名和参数值,那就需要
一个途径把参数名一个一个的拎出来,放到对象里面,我们可以遍历这个对象,也可以直接获取这个值,
接下来依然是到官方文档中,看下querystring的用法,官方文档比较简单
那我们直接在命令行里面演示一下就ok了
stringify()
首先看下怎么把参数这样的一个对象,给序列号成一个字符串
我们看到的是一个序列化后的字符串,第二个参数就是连接符,就是参数与参数之间的连接符,默认是&,假如说换成,
就变成了这样的一个效果,第三个参数就是这个key与value之间的这个=可以替换成什么值,或者说什么符号,比如我替换成:
就是这样的一个效果,所以这个是比较灵活的,可以根据需求来改
parse()
然后既然可以序列化,就可以反序列化,怎么来反序列化,我们同样通过这个querystring它的一个parse来进行反序列化的解析
第一个参数就是用来反序列化的一个字符串
可以看到上面意境发序列化成一个对象了
它也可以传递第二个参数,这个第二个参数呢就是,如果字符串里面不是&和=,直接解析就无法拿到正确的结果
上面就不是我们想要的,那么第二个参数就是要告诉parse,我们是通过,来分隔的,第三个参数告诉parse,key和value之间是由:分隔的
这样,我们就得到了想要的结果
escape()和unescape()
接下来还剩escape()和unescape(),也就是转义和反转义
如上,输入汉字,被转义成了这么一堆字符
那么再通过unescape()进行反转义就能够把反转义回来
那么querystring也是特别的好用,尤其是在我们要应对这种大量参数传递的场景,就可以帮助我们节省很多的时间,能够快速的反应这个
需求,算是快速处理参数的小利器