函數(shù)中剩余的參數(shù)可以用...符號(hào)來(lái)放入一個(gè)數(shù)組張
function containsAll(haystack, ...needles) {
for (var needle of needles) {
if (haystack.indexOf(needle) === -1) {
return false;
}
}
return true;
}
如果調(diào)用containsAll("banana", "b", "nan"),needles會(huì)被設(shè)置為["b", "nan"]。
只有最后一個(gè)參數(shù)可以被設(shè)置為rest參數(shù)
默認(rèn)參數(shù)
函數(shù)參數(shù)可以設(shè)置默認(rèn)參數(shù)
function animalSentence(animals2="tigers", animals3="bears") {
return `Lions and ${animals2} and ${animals3}! Oh my!`;
}
位置靠后的參數(shù)的默認(rèn)值可以使用前面參數(shù)的值
function animalSentenceFancy(animals2="tigers",
animals3=(animals2 == "bears") ? "sealions" : "bears")
{
return `Lions and ${animals2} and ${animals3}! Oh my!`;
}
傳遞undefined等同于沒(méi)有傳參數(shù),會(huì)使用默認(rèn)值