在呼叫函式時,瀏覽器每次都會傳遞進兩個隱含的引數:
1,函式的上下文物件this。
2、封裝實參的物件arguments
—-arguments是乙個類陣列物件,它也可以通過索引來運算元據,也可以獲取長度,
—-在呼叫函式時,我們所傳遞的實參都會封裝到arguments中
—-arguments.length可以用來獲取實參的長度
即使我們不定義形參,也可以通過arguments來使用實參,只不過比較麻煩。
arguments[0] 表示第乙個實參
arguments[1] 表示第二個實參
….arguments的長度只和傳進來的實參有關,傳多少實參,arguments的長度就為多少,即使再多的形參也不影響arguments的長度,因為它只和實參有關。
比如:
function fun()
fun(1,true);
輸出結果如圖:
—-它裡邊還有乙個屬性:
callee:這個屬性對應乙個函式物件,就是當前正在執行的函式的物件。
比如:
function fun()
fun(1,true);
輸出結果:
isarray():檢查乙個物件是不是陣列
js基礎 函式傳參 陣列基礎
函式返回值 什麼是函式返回值 函式的執行結果 可以沒有return 乙個函式應該只返回一種型別的值 函式傳參 可變參 不定參 arguments 函式的個數可以變化,引數陣列 例子 求和 例子 css函式 判斷arguments.length 給引數取名,增強可讀性 取非行間樣式 不能用來設定 ob...
js函式引數
之前一直以為乙個函式的引數是根據帶入的資料來使用的,用不用的到就是自己的事了,後來才發現不是的。js函式的引數與大多數其他語言中函式的引數有所不同,js函式不介意傳遞來多少個引數,也不在乎傳進來的引數是什麼資料型別,也就是說,即便你定義的函式只接收兩個引數,在呼叫這個函式時也未必一定要傳遞2個引數。...
js函式引數傳遞
js高程3 4.1.3中 ecmascript中所有函式的引數都是按值傳遞的。也就是說,把函式外部的值複製為函式內部的引數,就和把值從乙個變數複製到另乙個變數一樣。正如書中所說,有不少開發人員在這一點上可能感到困惑 很不幸,我就是那一部分人。本文一是看高程整理的筆記,另一方面是自己有很多不理解的地方...