? arguments對象(不定型參數(shù))
? arguments對象:在函數(shù)體內(nèi)具有數(shù)組功能的一個對象。但不是數(shù)組對象的實例(即不是數(shù)組類型)。
? 1、函數(shù)聲明后,函數(shù)體內(nèi)就存在了arguments對象。
? 2、函數(shù)調(diào)用,初始化實參時,實參按照順序保存在arguments對象中。
? 3、通過下標值可以訪問arguments對象中保存的實參值。
? 4、arguments對象只能在函數(shù)中使用。
? function hello(){
console.log(arguments[0],arguments[1],arguments[2]);
? ? ? ? ? }
? ? ? ? hello(10,20,30,40)
? 隨便輸入幾個數(shù)字計算和;
? //定義一個變量為he,初始值是0,用于儲存和
? var he=0;
? function jisuan(num){
? ? for (var i=0;i<arguments.length;i++) {
? ? he+=arguments[i]
? ? }
? ? alert(he);
? }
? //調(diào)用函數(shù)計算并傳入10,20,30,40
? jisuan(10,20,30,40)
?
? 作用域:簡單的說,作用域就是變量與函數(shù)的可訪問范圍,即作用域控制著變量與函數(shù)的可見性和生命周期
? 全局 在函數(shù)外面定義的的變量
? 特點:哪兒都可以修改
? 局部? 定義在函數(shù)內(nèi)部的
? 特點:出了函數(shù)就誰也不認了
? 閉包:官方”的解釋是:閉包是一個擁有許多變量和綁定了這些變量的環(huán)境的表達式(通常是一個函數(shù)),因而這些變量也是該表達式的一部分
? 簡單的說就是自函數(shù)能調(diào)用父函數(shù)的變量而父函數(shù)不能使用子函數(shù)的變量''