JavaScript 函数参数
JavaScript 函數(shù)參數(shù)
JavaScript 函數(shù)對(duì)參數(shù)的值沒(méi)有進(jìn)行任何的檢查。
函數(shù)顯式參數(shù)(Parameters)與隱式參數(shù)(Arguments)
functionName(parameter1, parameter2, parameter3) { // 要執(zhí)行的代碼…… }
函數(shù)顯式參數(shù)在函數(shù)定義時(shí)列出。
函數(shù)隱式參數(shù)在函數(shù)調(diào)用時(shí)傳遞給函數(shù)真正的值。
參數(shù)規(guī)則
JavaScript 函數(shù)定義顯式參數(shù)時(shí)沒(méi)有指定數(shù)據(jù)類(lèi)型。
JavaScript 函數(shù)對(duì)隱式參數(shù)沒(méi)有進(jìn)行類(lèi)型檢測(cè)。
JavaScript 函數(shù)對(duì)隱式參數(shù)的個(gè)數(shù)沒(méi)有進(jìn)行檢測(cè)。
默認(rèn)參數(shù)
ES5 中如果函數(shù)在調(diào)用時(shí)未提供隱式參數(shù),參數(shù)會(huì)默認(rèn)設(shè)置為: undefined
有時(shí)這是可以接受的,但是建議最好為參數(shù)設(shè)置一個(gè)默認(rèn)值:
實(shí)例(ES5)
如果函數(shù)調(diào)用時(shí)設(shè)置了過(guò)多的參數(shù),參數(shù)將無(wú)法被引用,因?yàn)闊o(wú)法找到對(duì)應(yīng)的參數(shù)名。 只能使用 arguments 對(duì)象來(lái)調(diào)用。
ES6 函數(shù)可以自帶參數(shù)
ES6 支持函數(shù)帶有默認(rèn)參數(shù),就判斷 undefined 和 || 的操作:
arguments 對(duì)象
JavaScript 函數(shù)有個(gè)內(nèi)置的對(duì)象 arguments 對(duì)象。
argument 對(duì)象包含了函數(shù)調(diào)用的參數(shù)數(shù)組。
通過(guò)這種方式你可以很方便的找到最大的一個(gè)參數(shù)的值:
實(shí)例
通過(guò)值傳遞參數(shù)
在函數(shù)中調(diào)用的參數(shù)是函數(shù)的隱式參數(shù)。
JavaScript 隱式參數(shù)通過(guò)值來(lái)傳遞:函數(shù)僅僅只是獲取值。
如果函數(shù)修改參數(shù)的值,不會(huì)修改顯式參數(shù)的初始值(在函數(shù)外定義)。
隱式參數(shù)的改變?cè)诤瘮?shù)外是不可見(jiàn)的。
通過(guò)對(duì)象傳遞參數(shù)
在JavaScript中,可以引用對(duì)象的值。
因此我們?cè)诤瘮?shù)內(nèi)部修改對(duì)象的屬性就會(huì)修改其初始的值。
修改對(duì)象屬性可作用于函數(shù)外部(全局變量)。
修改對(duì)象屬性在函數(shù)外是可見(jiàn)的。
總結(jié)
以上是生活随笔為你收集整理的JavaScript 函数参数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Oracle 序列和触发器
- 下一篇: js 获取域名_确定你会使用JS操作Ur