Node.js 基礎(chǔ)知識(shí)
1.初識(shí)
瀏覽器js引擎,每個(gè)瀏覽器內(nèi)置了dom bom api函數(shù),因此瀏覽器中的javasecript才開(kāi)源調(diào)用它們。
運(yùn)行環(huán)境是指代碼正常運(yùn)行所需要的必須環(huán)境,以chrome為例
V8引擎,內(nèi)置函數(shù)DOM\BOM \CANVAS\XMLHTTPR 等內(nèi)置API
Node.js 是一個(gè)基于Chrome V8引擎的 JavaScript運(yùn)行環(huán)境
node.JS 無(wú)法調(diào)用DOM和BOM等內(nèi)置瀏覽器的API
2.Terminal 快捷鍵
→ 上箭頭 展示上次輸入命令
tab鍵 快速補(bǔ)全文件路徑 輸入第一個(gè)字符 再按tab鍵 快速補(bǔ)全
esc鍵 快速清除當(dāng)前命令
cls命令
3.fs模塊
const fs =require('fs')
fs.readFile('./noteofjavascript.txt','utf8',function(err,data){
? ? if(!err){
? ? fs.writeFile('./newfile.txt',data+'完成寫入','utf8',function(err){
? ? })
}})
3.1fs模塊路徑動(dòng)態(tài)拼接的問(wèn)題,因?yàn)槭褂昧讼鄬?duì)路徑,如果要解決這個(gè)問(wèn)題,使用絕對(duì)路徑
const fs =require('fs')
fs.readFile('./files/1.txt','utf8',function(){
if(err) {return console.log('讀取失敗‘)}
})
絕對(duì)路徑示例
C:\\User\\escook\\Desktop\\Node\\1.txt
更好的解決辦法 __dirname //表示當(dāng)前所處目錄
__dirname+'相對(duì)文件路徑' 是更好的解決辦法
4path 模塊
path.join()將多個(gè)路徑片段拼接成一個(gè)完整的路徑字符串
path.basename('路徑','擴(kuò)展名')將文件名解析出來(lái)
const path = require('path')
path.join(‘/a',’/b/c/','../../)//參數(shù)填入不限制數(shù)量的路徑? ,注意? ../會(huì)抵消前面的路徑。
以后路徑的拼接都要用path.join()
path.basename('路徑','忽略的文件名部分,比如.txt')
path.extname('路徑') //返回?cái)U(kuò)展名
時(shí)鐘案例
1.匹配正則
const regStyle = /<style>[\s\S]*<\/style>/? \s空字符 \S 非空字符
/<html>[\s\S]*<\/html>/
/<script>[\s\S]*<\/script>/
const r1 = regStyle.exec(htmlStr)