国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

javascript中通過arguments參數偽裝方法重載

2019-11-20 14:03:53
字體:
來源:轉載
供稿:網友

在很多面向對象的高級語言中,都有方法的重載。而javascript沒有方法重載這個概念。但是我們可以通過arguments這個參數來偽裝成函數的重載

在模擬之前我們先看一下代碼:

復制代碼 代碼如下:

//表面上沒有聲明形式參數的函數
function fun() {
alert("示例代碼");
}
fun("小明", 100, true);//自己寫了三個實際參數

通過結果我們看到,即使我們聲明函數的時候沒有定義形式參數,在調用方法的時候,我們也是可以寫實際參數的。(實際上形式參數是寫給程序員調用函數時看的)

我們可以在代碼中可以得到實際參數嗎?答案是肯定的:請看代碼:

復制代碼 代碼如下:

//表面上沒有聲明形式參數的函數
function fun() {
alert(arguments[0]);//得到第一個實際參數的值。
alert(arguments[1]);//得到第二個實際參數的值。
alert(arguments[2]);//得到第三個實際參數的值。
alert(arguments.length);//得到實際參數的個數。
alert("示例代碼");
}
fun("小明", 100, true);//自己寫了三個實際參數

通過代碼我們就可以知道arguments(內部屬性) 本身是一個數組,其作用就是存放方法的實際參數。

有了以上知識點后,模擬方法重載就有思路了。我們可以通過實際參數的個數來作個判斷,從而執行不同的邏輯代碼。簡單代碼如下:

復制代碼 代碼如下:

function fun() {
if (arguments.length == 0) {
alert("執行沒有實際參數的代碼");
}
else if(arguments.length==1)
{
alert("執行傳入一個實際參數的代碼");
}
else if(arguments.length==2)
{
alert("執行傳入兩個實際參數的代碼");
}
}
fun();
fun("小明");
fun("小明", "小花");

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 文水县| 门头沟区| 鄂伦春自治旗| 资阳市| 调兵山市| 广汉市| 内乡县| 荥经县| 五家渠市| 乌海市| 敖汉旗| 武威市| 桐柏县| 长沙市| 延吉市| 天台县| 沙田区| 怀集县| 保德县| 江川县| 庆云县| 正安县| 海林市| 仪陇县| 井陉县| 祁阳县| 庄浪县| 武安市| 瑞金市| 绥阳县| 玉林市| 若尔盖县| 贺州市| 光山县| 武清区| 望奎县| 都江堰市| 洪湖市| 海原县| 德化县| 五原县|