鄙人初步學習nodejs,目前在讀《nodejs入門》這一本書,書很小,可是讓我知道了如何用nodejs建立一個簡單的小項目。例如如何建立一個服務器啦,例如http.createServer,還有根據不一樣的請求路徑來設置路由選擇啦,模塊引入,建立模塊啦,巴拉巴拉的東西。node
如今尚未看完這本書,看完了再來寫讀後感吧。git
今天主要記錄的是關於nodejs裏面的一個簡單的模塊,url模塊。這個url的模塊要使用的話須要先引入。若只是在命令行裏好比cmd或git bash 等使用url這個模塊的話,是不須要require進來的。直接使用即可。(我也不知道爲啥不用require)編程
const這個關鍵字是ES6裏面定義的常量,不可改變。bash
1 const url = require("url");
url一共提供了三個方法,分別是url.parse(); url.format(); url.resolve();服務器
1 url.parse(urlString,boolean,boolean)學習
parse這個方法能夠將一個url的字符串解析並返回一個url的對象ui
參數:urlString指傳入一個url地址的字符串url
第二個參數(可省)傳入一個布爾值,默認爲false,爲true時,返回的url對象中,query的屬性爲一個對象。spa
第三個參數(可省)傳入一個布爾值,默認爲false,爲true時,額,我也不知道有什麼不一樣,能夠去看看API。命令行
例子1,url.parse只傳一個參數的狀況。
1 url.parse("http://user:pass@host.com:8080/p/a/t/h?query=string#hash"); 2 /* 3 返回值: 4 { 5 protocol: 'http:', 6 slashes: true, 7 auth: 'user:pass', 8 host: 'host.com:8080', 9 port: '8080', 10 hostname: 'host.com', 11 hash: '#hash', 12 search: '?query=string', 13 query: 'query=string', 14 pathname: '/p/a/t/h', 15 path: '/p/a/t/h?query=string', 16 href: 'http://user:pass@host.com:8080/p/a/t/h?query=string#hash' 17 } 18 沒有設置第二個參數爲true時,query屬性爲一個字符串類型 19 */
例子2,url.parse第二個參數爲true的狀況
1 url.parse("http://user:pass@host.com:8080/p/a/t/h?query=string#hash",true); 2 /* 3 返回值: 4 { 5 protocol: 'http:', 6 slashes: true, 7 auth: 'user:pass', 8 host: 'host.com:8080', 9 port: '8080', 10 hostname: 'host.com', 11 hash: '#hash', 12 search: '?query=string', 13 query: { query: 'string' }, 14 pathname: '/p/a/t/h', 15 path: '/p/a/t/h?query=string', 16 href: 'http://user:pass@host.com:8080/p/a/t/h?query=string#hash' 17 } 18 返回的url對象中,query屬性爲一個對象 19 */
2 url.format(urlObj)
format這個方法是將傳入的url對象編程一個url字符串並返回
參數:urlObj指一個url對象
例子3,url.format
url.format({ protocol:"http:", host:"182.163.0:60", port:"60" }); /* 返回值: 'http://182.163.0:60' */
3 url.resolve(from,to)
resolve這個方法返回一個格式爲"from/to"的字符串,在寶寶看來是對傳入的兩個參數用"/"符號進行拼接,並返回
例子4,url.resolve
url.resolve("http://whitemu.com","gulu"); /* 返回值: 'http://whitemu.com/gulu' */
結束語:
好啦,對於url這個模塊的總結就那麼多啦,如有什麼理解錯誤的地方還須要指正,謝謝。