中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

了解JavaScript函數中的默認參數

發布時間:2020-09-29 11:41:07 來源:腳本之家 閱讀:134 作者:小峰 欄目:web開發

前言

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

請看下列代碼:

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

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

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

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

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

對于函數foo,如果num1參數的值未被傳遞,那么JavaScript將設置9作為num1的默認值。

檢查未定義的參數

即使你在調用函數時明確地傳遞undefined作為參數值,參數值也將設置為默認值。

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

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

運行時計算默認值

JavaScript函數默認值在運行時計算。為了更好地理解這一點,請看以下代碼:

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

在函數foo中,參數值的默認值設置為函數koo。在運行時調用函數foo時,將計算函數koo。調用foo函數后,你會得到如下圖所示的輸出(在這個例子中,我們使用了Ignite UI框架)。

了解JavaScript函數中的默認參數

重用默認參數

默認參數可供之后的默認參數使用。請看下列代碼:

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

在上面的代碼中,使用num1的默認值來計算num2的默認值。調用函數foo時將得到以下輸出:

了解JavaScript函數中的默認參數

結論

JavaScript默認參數在編寫函數時非常有用。在調用函數時,如果缺少參數,則默認參數功能允許你為函數參數分配默認值,而不是將其定義為undefined。

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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

吉木萨尔县| 定州市| 永兴县| 郸城县| 西华县| 田林县| 霸州市| 长沙市| 黔西| 咸丰县| 紫阳县| 科尔| 湖州市| 巫溪县| 开远市| 衡阳县| 资讯| 石林| 嘉义县| 嘉黎县| 松潘县| 平原县| 佳木斯市| 宾阳县| 沾化县| 东乡县| 冷水江市| 合江县| 林甸县| 米林县| 兴城市| 内乡县| 建水县| 清镇市| 祁阳县| 南郑县| 古丈县| 富宁县| 上思县| 深圳市| 宁南县|