node基礎知識點總結2

常用工具,命令

1.0 nvm常用命令

  • nvm項目地址:nvm-github地址
  • 查看所有已安裝的本地的node版本
    nvm list
  • 切換node版本
    nvm use 版本號
  • 安裝指定版本的node
    nvm install 版本號 位數
  • 卸載已安裝的指定版本的node
    nvm uninstall 版本號

1.1模塊的分類

模塊分爲核心模塊、文件模塊,其中包是一種特殊的文件模塊

  • 核心模塊
    • fs file system
    • http
    • os
    • path
    • querystring
    • url

1.2模塊三兄弟 require、module、exports

  • require的實現原理
   補充了exports是指向modules.exports的一個指針,exports能做的,modules.exports都能做的。 
  • require查找文件、包原理
   第二次加載的時候優先從緩存查找讀取,
   node_modules中沒有的,從父文件夾中查找,如果沒有,直到根目錄爲止
  • module
裏面保存了模塊的信息路徑、父子信息、曝露出的對象信息
  • exports
module.exports 別名
module.exports=123;已經使用過一次了,exports就不生效了
module.exports.a=12;這樣使用,exports是還可以使用的

1.4包

   package.json是包的說明書,
   dependencies當前包所依賴的包:>、<、>=、<=、~、*、" "、X、^、
    devDependencies 開發環境中包所依賴的包:

1.5npm

  npm init  創建package.json文件
  npm install  將package.json中的文件依賴的包從網上下載到本地
  npm install -save 包名  將包下載下來並且加載到dependencies中去
  npm i -S 包名 替代上面的命令
  npm install -save-dev 包名 將包下載下來並且加載到devDependencies中去
  npm i -D 包名 替代上面的命令
  npm install -g 包名 全局安裝  安裝的是全局工具
  npm docs 包名 查看包的文檔
  

1.6nrm npm的數據源管理工具

nrm ls 查看npm的數據源
nrm use 切換npm下載包的地址
nrm test  測試下哪個數據源快

1.7 3m

npm node的包管理工具
nvm node的版本管理工具
nrm npm的數據源管理工具
###1.8箭頭函數

語法糖替代function(){}  v=>v

2.i/o

2.1什麼是i/o?

   io input、output 輸入輸出,電腦的輸入輸出,例如音頻錄音表示聲音輸入、聽音樂是聲音的輸出
   網絡上的傳輸全部是在傳字符串,i/o在服務器上可以理解爲讀寫操作。

2.2什麼是併發?

   一個時間段中有幾個程序都處於已啓動運行到運行完畢之間。

3異步i/o與事件驅動

3.1什麼是進程?

進程是爲運行當中的應用程序提供運行環境的
一個運行當中的應用程序就會有一個進程與之相對應

3.2什麼是線程?

線程是用來運行應用程序中代碼的,
一個線程在一個時間只能做一件事件。
多線程,調度起來很麻煩。
node是單線程執行,用異步替代了多線程

3.3同步、異步有什麼不同?

異步不會阻塞後面的代碼,同步會阻塞後面的代碼
一條線程先執行同步的代碼後執行異步的代碼。

3.4異步非i/o操作和異步i/o操作

異步非io setTimeout setInterval
異步IO操作 操作文件 網絡操作 fs

3.5異步和多線程的比較?

node的異步是幫助我們去做了多線程的操作,簡化了代碼

4.文件操作

###4.1文件的完整讀寫

fs模塊---》操作文件---》io----》node的特長
fs模塊是node非常重要的模塊,能體現出node的優勢
  • fs.readFile() 讀文件
  • fs.writeFile() 寫文件
  • fs.appendFile() 在文件的內部去追加寫一些內容
  • fs.mkdir() 創建文件夾
  • fs.readdir() 讀文件夾
  • fs.access() 判斷路徑
  • fs.stat()
    isFile:用於判斷被查看的對象是否爲一個文件,如果是返回true,否則,返回false;
    isDirectory:用於判斷被查看的對象是否爲一個目錄,如果是的話則返回true,否則,返回false;
    isSymbolicLink:用於判斷被查看的文件是否爲一個符號鏈接文件,如果是的話則返回true,否則,返回false。該方法僅在lstat方法的回調函數中有效;

5.異常處理

什麼是異常?
計算機不能處理的狀況稱之爲異常
try catch 只能捕獲同步異常
try {
fs.accessSync(’./02sfdasdfio.js’);
} catch (err) {
console.log(“1”+err);
}
異步異常對象和被try catch捕獲的對象是一樣的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章