js里調用函數時,函數名帶括號與不帶括號的區別



function test(){
return 1;
}
var a=test;
console.log(a);//輸出[Function: test]
var b=test();
console.log(b);//輸出1


函數名是一個對象,而對象是保存內存中,函數名是指向這個對象的指針。

var a=test便是這個函數對象的指針給a。

var b=test()后面加上圓括號就表示立即調用,范圍函數的返回值。還可以在函數體后面加圓括號表示立即調用。
————————————————
版權聲明:本文為CSDN博主「遷就i」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_36619427/article/details/80528697


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM