當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
JavaScript No Overloading 函数无重载之说
生活随笔
收集整理的這篇文章主要介紹了
JavaScript No Overloading 函数无重载之说
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
????? 在ECMAScript語言中,函數名字僅僅只是是一個指針(能夠覺得是引用),以下的代碼:
"use strict";function sum(a,b){return a+b; }console.log(sum(1,2));var sum2 = sum; sum = null;console.log(sum2(3,3));
????? 輸出:3,6;
?????
?????? 代碼能夠看出,我們定義了函數,事實上函數名是一個指針,指針指向了堆內存那塊這個函數的定義,我們能夠把這個地址保存好幾份。
?????? 我們看一下“重載”(加引號強調不是真的):
"use strict";function addSomeNumber(num){return num + 100; }function addSomeNumber(num,add){return num + add; }console.log(addSomeNumber(10));
??????? 結果是什么:NaN
????? 上面的代碼能夠等價于以下的書寫:
?
"use strict";var addSomeNumber = function(num){return num + 100; };addSomeNumber=function(num,add){return num + add; };console.log(addSomeNumber(10));??? 由這個等價的代碼,我們能夠輕易的看出。當我們定義同名函數時候。相當于函數指針指向了其他代碼定義。
總結
以上是生活随笔為你收集整理的JavaScript No Overloading 函数无重载之说的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux Signals 进程信号简介
- 下一篇: 《编写可测试的JavaScript代码》