文章出處

模塊概述

在nodejs中,提供了querystring這個模塊,用來做url查詢參數的解析,使用非常簡單。

模塊總共有四個方法,絕大部分時,我們只會用到 .parse().stringify()兩個方法。剩余的方法,感興趣的同學可自行查看文檔。

  • .parse():對url查詢參數(字符串)進行解析,生成易于分析的json格式。
  • .stringif():跟.parse()相反,用于拼接查詢查詢。
querystring.parse(str[, sep[, eq[, options]]])
querystring.stringify(obj[, sep[, eq[, options]]])

查詢參數解析:querystring.parse()

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

第四個參數幾乎不會用到,直接不討論. 第二個, 第三個其實也很少用到,但某些時候還是可以用一下。直接看例子

var querystring = require('querystring');
var str = 'nick=casper&age=24';
var obj = querystring.parse(str);
console.log(JSON.stringify(obj, null, 4));

輸出如下

{
    "nick": "casper",
    "age": "24"
}

再來看下sepeq有什么作用。相當于可以替換&=為自定義字符,對于下面的場景來說還是挺省事的。

var str1 = 'nick=casper&age=24&extra=name-chyingp|country-cn';
var obj1 = querystring.parse(str1);
var obj2 = querystring.parse(obj1.extra, '|', '-');
console.log(JSON.stringify(obj2, null, 4));

輸出如下

{
    "name": "chyingp",
    "country": "cn"
}

查詢參數拼接:querystring.stringify()

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

沒什么好說的,相當于parse的逆向操作。直接看代碼

var querystring = require('querystring');

var obj1 = {
    "nick": "casper",
    "age": "24"
};
var str1 = querystring.stringify(obj1);
console.log(str1);

var obj2 = {
    "name": "chyingp",
    "country": "cn"
};
var str2 = querystring.stringify(obj2, '|', '-');
console.log(str2);

輸出如下

nick=casper&age=24
name-chyingp|country-cn

相關鏈接

官方文檔:https://nodejs.org/api/querystring.html


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()