天天看點

紅寶書 第3章 整理——資料類型+函數入門1、資料類型2、函數(入門)

1、資料類型

5種基本資料類型:undefined,null,Boolean,number,string

1中複雜資料類型:object

undefined:隻用var聲明,沒有指派時,值為undefined。将變量指派為undefined無意義。

null:指派為null,typeof為object類型,本質是空對象指針。将變量設定為null有必要,尤其是這個變量将來用于儲存對象,可以用于判斷 if(car != null) {  .......  }

boolean:所有資料類型都可以使用函數Boolean(a)來将其轉換為Boolean型,其中空字元串“”,0,NaN,null,undefined為false

number:NaN,即非數值(not  a number),是一個特殊的number變量,用于判斷檢測

                特點:① 涉及到任何NaN的操作,結果都是NaN

                           ② NaN與任何值都不相等,包括它本身。

                有一個函數isNaN(),用于判斷一個變量是否“不是數值”,注意,是數值的,還有可以轉為數值的,都會傳回false。

string:有一個函數a.toString(),可以将a轉換為string       // null與undefined轉不了,另一個函數String(a)可以

2、函數(入門)

① 在函數體内,可以直接用arguments[ ]來通路參數,實際是arguments對象,但是與數組用法類似

     例如直接arguments[0],arguments[1]來通路函數第一個第二個參數,用argumnets.length來通路一共有幾個參數傳進來。

②   js中函數實際上無重載,因為js識别不了傳入的參數每個的屬性,隻是單純的用arguments數組來裝載

     是以若在js中定義兩個名稱相同的函數,後面的會覆寫前面的

③ 利用這個arguments還可以實作函數的重載,即函數名相同,但是功能不同,隻要參數個數和類型不同即可。

function add(){
  if(arguments.length == 1){
     //當參數個數為1時,執行這個操作
  }
  if(arguments.length == 2){
    //當函數傳入參數個數為2時,執行這個操作
   }
}

add(1);
add(1,2);