函式的引數

2021-09-28 15:21:10 字數 1861 閱讀 7145

函式的引數有實參和形參

形參可以當作區域性變數

本質上是將實參賦值給形參

傳遞物件時,相當於obj=person,引用型別賦值的是位址,儲存在堆記憶體中,指向同乙個物件,person對多乙個name

var person =

;function

setperson

(obj)

setperson

(person)

;//實參

引數的個數

1.當實參==形參的個數,分別對應依次的

function

add(num1, num2)

add(1,

2);

2.實參個數《形參個數

例如add(1),第乙個數num1=1,第二個數num2=undefined

只有當我們的引數是可選引數,即選擇性的傳,不傳的話可以不傳。

像數學上的底數和冪數,當冪為2時選擇性的不傳

輸出:9 27

function

pow(base, power)

console.

log(

pow(3)

);console.

log(

pow(3,

3));

3.實參個數》形參個數

當我們有時候傳參的時候傳多了,可以使用arguments,用來儲存實參的陣列,如果長度為0則直接返回掉,顯示未定義。

function

add(

)return sum;

}console.

log(

add())

;//undefined

console.

log(

add(1,

2,3,

4,5)

);//15

function

min()}

return mins;

}var arr =

newarray(2

,4,1

,-1,

56,3,

-7);

console.

log(min.

(window,arr)

);

arguments

arguments是乙個類陣列,不能夠使用arguments.push();

不建議使用arguments來改變值

function

fn(name)fn(

'xm');

//顯示空串

arguments.callee指函式本身,一般用於遞迴,但是在嚴格模式下不允許使用,會出現報錯

function

jiecheng

(num)

console.

log(

jiecheng(5

));console.

log(

jiecheng(4

));

判斷實參和形參個數是否一致,形參的個數為add.length

function

add(num1, num2)

console.

log(

add(1,

1));

//2console.

log(

add(1)

);//error

console.

log(

add(1,

2,3)

);//error

函式的引數

參考 先說一下預設引數 當我們呼叫乙個函式的時候,忘記傳入相應的引數了,那麼函式肯定呼叫失敗。為了讓函式可以在 失誤 的情況下也可以呼叫出來,那麼預設引數就可以派上用場了。例如,計算x2 可以完全把第二個引數值設為預設引數。def power x,n 2 s 1 while n 0 n n 1 s ...

函式的引數

沒有引數 定義函式和呼叫函式時括號裡都不寫內容 2.有乙個引數 傳什麼就是什麼 3.有多個引數 站在實參的角度上 按位置傳參 按關鍵字傳參 混著用可以 但是必須先按照位置傳參,再按照關鍵字傳參。不能給同乙個變數傳多個值。站在形參的角度上 位置引數 必須傳,且有幾個引數就傳幾個值 預設引數 可以不傳,...

函式的引數

現在,我們已經把函式返回值相關的事情研究清楚了,我們自己已經完成了乙個可以返回字串長度的函式。但是現在這個函式還是不完美,之前我們使用len函式的時候得是length len hello world 這樣我可以想計算誰就計算誰的長度。但是現在我們寫的這個函式,只能計算乙個 hello world 的...