1. 程式人生 > >Node.js :語句、函式與變數

Node.js :語句、函式與變數

語句:

  • 條件
  • 迴圈
  • 分支
  • break、continue
  • label
  • with

條件
if
if…else
if … else if

迴圈語句
while
do…while
for迴圈
for(var key in 物件或陣列){}

分支語句
1、break 用於跳出
2、有多個滿足只會執行第一個;

終止於句

  • break : 終止當前迴圈
  • continue:跳過這次迴圈,跳到下次迴圈;

其它

  • label
  • with: 簡化語句
var seq = {
    session :{
        user : {
            name
:'Sid', sex:'man' } } }; req.session.user.name req.session.user.sex with(req.session.user){ console.log('name: ', name, 'sex: ', sex); }

函式

兩種方法:

1function sum(numA, numB){
    console.log('sum: ', numA + numB);
}
2var sum2 = new Function(){
    'numA',
    'numB'
'console.log(" sum2 : ", numA + numB);' };
3var sum3 = function(numA,numB){
    console.log('sum3: ', numA + numB);
};

呼叫方法:

sum1(1,2)
sum2(1,2)
sum3(1,2)

但是,使用表示式方式定義的函式必須提到前面;

返回值
當沒有定義返回值時,返回的是undefined

引數

  • arguments
  • 引數是按值傳遞的,並不是物件的引用

函式中可以不寫引數的型別,引數的個數也能使不確定的
其他特點

  • 匿名函式
var
fs = require('fs'); fs.readFile(__filename, 'utf8', function(err,data){ console.log('readfile err, data: ',err, data); });
  • 回撥函式
    上面的匿名函式就是一個回撥函式,當readfile執行結束後會執行回撥函式。
  • 屬性和方法:有函式.length方法等

變數

變數的值

  • 基本型別值
  • 引用型別值

定義
注:一個指令碼中 所有變數都會提前eg:

var str = "strA";
console.log('str : ', str);

相當於:

var str;
str = 'strA';
console.log('str : ', str);

全域性變數
1、指令碼的外層
2、不使用var關鍵字(但嚴格模式中,不能不使用 var)

常量

const CONST_VAR = 1;

常量不可以修改