js的函數返回值


今天從跟公司牛人那學到的~避免以后忘了趕快記錄下來

平時JS的function的返回值可以是一個數值,也可以是一個對象({name:abc,age:123}),更可以是一個函數(這里我是第一次聽說),從網上搜了搜,發現很多都是寫的像下面的代碼一樣:

1 (function(){
2     var x=1;
3     return function(){
4         x=x+1;
5         alert(x);
6     }
7 })();

看上去好像沒什么問題~但是根本不運行~坑爹呢~

后來問過別人才知道原來想要運行的話要加一個NEW:

1 (function(){
2     var x=1;
3     return new function(){
4         x=x+1;
5         alert(x);
6     }
7 })();

在返回的函數前加一個new,說是當成一個類來運行就可以了~具體的意思我明白了~但是不知道該怎么表達~有大牛的話希望能給出解釋~


免責聲明!

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



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