對url解析有兩套方法<空值顯示"">node
const URL = require("url").URL;
const myUrl = new URL(a);
//參數a爲string類型 例如https://www.baidu.com
複製代碼
取map類型中的值:
myUrl.searchParams.get("ie")
bash
const URL = require("url");
const myUrl = URL.parse(a);
//參數a爲string類型 例如https://www.baidu.com
複製代碼
const resolve = require("url").resolve;
//resolve(a, b) 兩個參數
resolve("local/user/sjl", "url"); //local/user/url
複製代碼
傳入url地址異步
resolve(https://www.baidu.com, "node"); //https://www.baidu.com/node
複製代碼
demo函數
//1. qs.parse
const qs = require("querystring");
const URL = require("url").URL;
const myUrl = new URl(""https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=0&rsv_idx=1&tn=baidu&wd=%E4%BC%B4%E5%A5%B9&rsv_pq=9867bbfc00070dc5&rsv_t=2d8bV4Pf6LhibJm74DFWLicdMEgP4jKJZ8PQrdss4Wx14X8m%2B2oi9uEnqJw&rqlang=cn&rsv_enter=1&rsv_sug3=14&rsv_sug1=8&rsv_sug7=100&rsv_sug2=0&inputT=8553&rsv_sug4=10518"");
console.log(qs.parse(myUrl.search.slice(1)));
複製代碼
效果: ui
//2. qs.stringify功能
const qs = require("querystring");
let obj = {
sjl : 123,
yl : 456
};
qs.stringify(obj, "@", "$");
複製代碼
效果:加密
第二個參數:鏈接符,默認"&"
第三個參數:鍵值對,默認"="url
const crypto = require('crypto');
//crypto.getHashes ;//哈希加密所支持的方法
let pwd = "sjl520";
const obj = crypto.createHsh("sha256");//建立一個哈希加密,規則是256
obj.update(pwd); //經過加密對象對數據進行加密
obj.digest("hex"); //獲得加密數據
//disgest獲得的是Buffer對象<二進制> ,"hex"是16進制
複製代碼
效果: 1.buffer對象 spa
2.hex對象const fs = require("fs")
3d
讀取文件code
1)異步: fs.readFile(a, b, c)
a> 讀取文件的路徑
b> 回調函數:有兩個參數 err,data
1.err: 默認值null,表示讀取順利,發生錯誤時會有報錯信息(是一個對象{})
2.data: 讀取的數據(Buffer對象)
c> 字符集:"utf8"
複製代碼
fs.readFile("./sjl.txt", (err, data) => {
console.log(err, data);
}, "utf8");
//注: 等讀取完文檔內容後,執行回調,只執行一次
複製代碼
2)同步: fs.readFileSync(a, c)
同步沒有回調函數,讀取失敗直接報錯
寫入文件 1)異步: fs.write(a, b, c, d)
a> 文件路勁名稱
b> 寫入的數據
c> 字符集:"utf8"
d> 回調函數:有一個參數 err
err: 默認值null,表示讀取順利,發生錯誤時會有報錯信息(是一個對象{})
複製代碼
let data = "522";
fs.writeFile("./sjl.txt", data, "utf8", (err) => {
console.log(err);
}, "utf8");
//注: 等讀取完文檔內容後,執行回調,只執行一次
複製代碼
2)同步: fs.writeSycn(a, c)
建立文件夾 fs.mkdir()
fs.mkdir("./sjl", err=>{
console.log(err);
});
注:只能建立單個文件夾,建立存在的會報錯
複製代碼
讀取文件夾 fs.readdir()
fs.readdir("./sjl", (err, data)=>{
//data: 文件數據,全部文件夾及文件
})
複製代碼
判斷
const stat = fs.statSync("路勁")
返回布爾值