2025年9月8日 星期一

關於預設引數( Default parameters)

 關於預設引數( Default parameters)

前言

  不知從什麼時候開始 JavaScript 開始支援預設引數( Default parameters) ,在此把學習的過程做個紀錄。


內容

  範例如下

function call( name = 'DefaultName' ){
  return name
}
//
console.log( call() );//DefaultName
//
function testCall1( val1 = 1 , val2 ){
  return val1 + val2;
}
console.log( testCall1(1) );//NaN
//
function testCall2( val1 , val2 = 1 ){
  return val1 + val2;
}
console.log( testCall2(1) );//2


預設引數( Default parameters) 用起來很簡單,只要在宣告時在引數後方給予預設值即可使用,不過要注意多個引數又有的沒預設引數的狀況,像 testCall1() 的結果遽然是 NaN ,理由也很簡單引為匹配引數時並不如預期,預期是 testCall1( 1(default) ,1) ,但最後匹配的是 testCall1( 1 , undefined ) ,像 testCall2() 這樣就沒問題,會如預期一樣匹配,所以有預設值的引數要盡量向後擺。


參考資料

[ developer.mozilla.org ] Default parameters

沒有留言:

張貼留言