JavaScript中的函數(shù)重載深入理解
在JavaScript中有一種特殊的數(shù)據(jù)類型---Function類型,JavaScript的每個函數(shù)都是Function類型的實例。由于函數(shù)是對象,因此函數(shù)名實際上也是一個指向函數(shù)對象的指針,不會與某個函數(shù)綁定。
<pre name="code" class="html">function sum(num1,num2)
{
return num1 +num2;
}
alert(sum(10,10)); //20
var other = sum;
alert(other(10,10)); //20
sum = null;
alert(other(10,10)); //20
將函數(shù)名作為指向函數(shù)的指針,有助于理解為什么ECMAScript中沒有函數(shù)重載的概念
function sum(num1)
{
return num1 +100;
}
function sum(num1)
{
return num1 +200;
}
alert(sum(200)); //400
雖然聲明了兩個同名函數(shù),但是后面的函數(shù)覆蓋了前面的函數(shù),以上等價于下面的代碼
function sum(num1)
{
return num1 +100;
}
sum = function(num1)
{
return num1 +200;
}
alert(sum(200)); //400
在創(chuàng)建第二個函數(shù)時,實際上覆蓋了引用的第一個函數(shù)變量sum
- 如何實現(xiàn)JS函數(shù)的重載
- js 覆蓋和重載 函數(shù)
- js中方法重載如何實現(xiàn)?以及函數(shù)的參數(shù)問題
- JS函數(shù)重載的解決方案
- 有關(guān)于JS構(gòu)造函數(shù)的重載和工廠方法
- Javascript基礎(chǔ) 函數(shù)“重載” 詳細介紹
- 詳解JS函數(shù)重載
- 為JavaScript添加重載函數(shù)的輔助方法
- 添加JavaScript重載函數(shù)的輔助方法2
- javascript函數(shù)重載解決方案分享
- 通過實例理解javascript中沒有函數(shù)重載的概念
- JavaScript函數(shù)重載操作實例淺析
相關(guān)文章
JavaScript Set與Map數(shù)據(jù)結(jié)構(gòu)詳細分析
大家心里是否產(chǎn)生過這樣的疑問,JS中既然已經(jīng)有對象這種數(shù)據(jù)結(jié)構(gòu),我們?yōu)槭裁催€要再單獨去使用Set或者Map呢?下面這篇文章主要給大家介紹了關(guān)于ES6中Set和Map數(shù)據(jù)結(jié)構(gòu)的相關(guān)資料,需要的朋友可以參考下2022-11-11
關(guān)于function類中定義變量this的簡單說明
下面小編就為大家?guī)硪黄P(guān)于function類中定義變量this的簡單說明。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05

