1. 程式人生 > >node.js零基礎學習筆記(一)

node.js零基礎學習筆記(一)

開始:一個前端小白接觸node.js,簡單的筆記,筆記的記錄邏輯或許不是太清晰,但是能看懂,或許對node.js的學習不精,也可能有錯誤理解的,第一次接觸,僅供和我一樣零基礎學習node.js的人,會繼續補充新增,謝謝大家~麼麼噠

NodeJS

一、簡介

   what

   1、Node.js是一個基於 Chrome V8 引擎 的 JavaScript 執行時
         js是一門程式語言 語言需要一個環境執行
         瀏覽器可以執行js,js還可以執行在node.js環境中
         Node.js創始人:Ryan Dahl
         Node.js是一個平臺,使用的開發語言是javascript,平臺提供了作業系統底層的api,方便做服務端程式,具體如 檔案操作,程序管理、通訊操作等。

C:\Users\Administrator>notepad
C:\Users\Administrator>calc
C:\Users\Administrator>mspaint
C:\Users\Administrator>write
C:\Users\Administrator>sysdm.cpl

    notepad:開啟記事本
    clac:開啟計算器
    mspaint:開啟畫圖
    write:開啟寫字板,world
    sysdm.cpl:開啟系統屬性

 2、安裝成功之後,開啟cmd,輸入node -v出現版本號 證明安裝成功

 3、為什麼在其他碟符下(沒在nodeJS安裝的碟符下)也可以執行node命令?因為環境變數path配置了node安裝目錄。所以如果nodeJS在其位置無法執行JS時,可以在系統環境變數中編輯。 
       檢視:電腦 - 屬性 - 高階系統設定 - 環境變數 – 系統變數 – Path (快捷鍵:sysdm.cpl開啟系統屬性)

why
       * js藉助於nodejs可以開發服務端程式
       * 更好學習後面高階知識 vue、react等
       * 提供資料介面,瞭解整個專案開發流程 從前端到後端到資料庫


how
      * nodejs環境下的js語法
      * 知道nodejs後臺與其他後臺語言的區別

二、nodejs初步使用

      先書寫一個*.js檔案
      命令列視窗切換到js檔案所在目錄  cd  
      node +檔名 

C:\Users\Administrator>cd C:\xampp\htdocs\web-test\js
C:\xampp\htdocs\web-test\js>node test.js
hello world

三、nodejs與其他伺服器比較

      B/S架構:Browser/Server
      瀏覽器執行的程式 html+css+js
      伺服器執行的程式 php jsp asp Python

      瀏覽器關心 請求準確傳送 準確接受伺服器的響應 渲染頁面 加事件監聽...
      伺服器關心 GET請求或POST請求引數的拾取 資料庫操作後臺模板

四、認識fs模組 

    fs file system檔案系統模組
     模組 物理概念 一個或者多個檔案單獨對外,產生一定的功能,此時他們就是一個模組 
     模型 抽象概念 資料的載體 處理底層的演算法和邏輯 很多時候一個類
     就是一個模型 MVC中M就是模型

//fs模組,讀取一個檔案的內容,輸出在控制檯
var fs = require("fs");
//fs的方法readFile(),讀取檔案
fs.readFile('../data/demo.txt', 'utf8', function(err, data){
    console.log(data);
    console.log(data.toString())
});
//node.js是非同步的,讀取檔案需要時間,先執行後面的console.log("ok");
console.log("ok");

輸出結果:

"C:\Program Files (x86)\JetBrains\WebStorm 10.0.1\bin\runnerw.exe" "C:\Program Files\nodejs\node.exe" test.js
ok
hello world
hello world
Process finished with exit code 0

node.js是非同步的,執行讀取檔案方法有一定時間,在讀取時先執行console.log(“ok”);