最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

了解JavaScript函數(shù)中的默認(rèn)參數(shù)

 更新時(shí)間:2019年05月30日 15:46:50   作者:小峰  
JavaScript函數(shù)可以有默認(rèn)參數(shù)值。通過默認(rèn)函數(shù)參數(shù),你可以初始化帶有默認(rèn)值的正式參數(shù)。下面我們來一起學(xué)習(xí)一下吧

前言

JavaScript函數(shù)可以有默認(rèn)參數(shù)值。通過默認(rèn)函數(shù)參數(shù),你可以初始化帶有默認(rèn)值的正式參數(shù)。如果不初始化具有某些值的參數(shù),則該參數(shù)的默認(rèn)值為undefined。

請(qǐng)看下列代碼:

function foo(num1){
console.log(num1);
}
foo();

在調(diào)用函數(shù)foo時(shí),你沒有傳遞任何參數(shù),因此變量num1的默認(rèn)值設(shè)置為undefined。但是,有時(shí)你可能需要設(shè)置默認(rèn)值而非undefined。過去,最好的策略是測(cè)試參數(shù)值undefined,然后分配一個(gè)值。所以,在上面的例子中,如果你想要將num1的默認(rèn)值設(shè)置為9,那么你可以按照以下代碼所示的方式做:

function foo(num1) {
if (num1 === undefined) {
num1 = 9;
}
console.log(num1);
}
foo();

ECMAScript 6引入了函數(shù)的默認(rèn)參數(shù)。使用ECMA 2015的默認(rèn)參數(shù)功能,你將不再需要檢查未定義的參數(shù)值?,F(xiàn)在,你可以將9設(shè)置為參數(shù)本身的默認(rèn)值。你可以重寫上述函數(shù)以使用默認(rèn)值,如下所示:

function foo(num1 =9) {
console.log(num1);
}
foo();

對(duì)于函數(shù)foo,如果num1參數(shù)的值未被傳遞,那么JavaScript將設(shè)置9作為num1的默認(rèn)值。

檢查未定義的參數(shù)

即使你在調(diào)用函數(shù)時(shí)明確地傳遞undefined作為參數(shù)值,參數(shù)值也將設(shè)置為默認(rèn)值。

function foo(num1 =9) {
console.log(num1);
}
foo(undefined);

在上面的代碼中,你傳遞undefined為num1的值;因此,num1的值將被設(shè)置為默認(rèn)值9。

運(yùn)行時(shí)計(jì)算默認(rèn)值

JavaScript函數(shù)默認(rèn)值在運(yùn)行時(shí)計(jì)算。為了更好地理解這一點(diǎn),請(qǐng)看以下代碼:

function foo(value = koo()) {
return value;
}
function koo() {
return "Ignite UI";
}
var a = foo();
console.log(a);

在函數(shù)foo中,參數(shù)值的默認(rèn)值設(shè)置為函數(shù)koo。在運(yùn)行時(shí)調(diào)用函數(shù)foo時(shí),將計(jì)算函數(shù)koo。調(diào)用foo函數(shù)后,你會(huì)得到如下圖所示的輸出(在這個(gè)例子中,我們使用了Ignite UI框架)。

重用默認(rèn)參數(shù)

默認(rèn)參數(shù)可供之后的默認(rèn)參數(shù)使用。請(qǐng)看下列代碼:

function foo(num1 = 9, num2 = num1 + 8){
console.log(num2);
}
foo();

在上面的代碼中,使用num1的默認(rèn)值來計(jì)算num2的默認(rèn)值。調(diào)用函數(shù)foo時(shí)將得到以下輸出:

結(jié)論

JavaScript默認(rèn)參數(shù)在編寫函數(shù)時(shí)非常有用。在調(diào)用函數(shù)時(shí),如果缺少參數(shù),則默認(rèn)參數(shù)功能允許你為函數(shù)參數(shù)分配默認(rèn)值,而不是將其定義為undefined。

英文原文:Easy JavaScript Part 3: What Is a Default Parameter in a Function?

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

富民县| 固始县| 宝清县| 靖西县| 长白| 华宁县| 宾川县| 芦山县| 盐边县| 石阡县| 阳原县| 安新县| 金山区| 武鸣县| 荣成市| 内丘县| 兴海县| 乌拉特后旗| 菏泽市| 建阳市| 轮台县| 临洮县| 卓尼县| 兰溪市| 叙永县| 徐闻县| 云和县| 名山县| 浦城县| 慈溪市| 酉阳| 津南区| 交城县| 特克斯县| 万荣县| 扎兰屯市| 崇仁县| 仪征市| 旅游| 渝北区| 靖边县|