課程
/前端開發(fā)
/JavaScript
/JavaScript深入淺出
老師 你說的這個 new ?我想到了一個問題。這個new 有什么作用?
2015-02-06
源自:JavaScript深入淺出 4-2
正在回答
不使用new調用函數(shù),就是正常的函數(shù)調用,return值作為返回值,若沒有return語句則返回undefined。
function?foo()?{ ????this;?//?全局對象 } foo();?//?undefined
使用new調用函數(shù),函數(shù)將作為構造器,調用時函數(shù)內的this會指向以foo.prototype為原型的對象,若無return語句或return返回的不是對象,則將this作為返回值。
function?foo()?{ ????this;?//?object ????this.__proto__;?//?foo.prototype; } new?foo();?//?object
重新分配內存
舉報
由淺入深學習JS語言特性,且解析JS常見誤區(qū),從入門到掌握
3 回答用new創(chuàng)建的問題一點疑問?
5 回答對于prototype和new的疑問
4 回答請問 var obj = new Object; 和 var obj = new Object(); 的區(qū)別是什么?
1 回答為什么new一個出來調用就不會問題
2 回答{}.toString.apply(new String(‘str’));
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關注慕課網(wǎng)微信公眾號
2015-02-08
不使用new調用函數(shù),就是正常的函數(shù)調用,return值作為返回值,若沒有return語句則返回undefined。
使用new調用函數(shù),函數(shù)將作為構造器,調用時函數(shù)內的this會指向以foo.prototype為原型的對象,若無return語句或return返回的不是對象,則將this作為返回值。
2015-02-06
重新分配內存