本篇文章帶給大家的內容是關於如何實作js中new的功能? js中new的用法,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
要實現new的功能,我們首先要知道new是做什麼的呢?
在js中var a = new A() 後
#1.創建一個空http://www.php.cn/js-tutorial-378179.html物件obj{}
2.將a的this指向obj{}
# 3.將a的_proto_指向A的prototype
4.執行A的建構子
5.回傳obj
程式碼級實作:
function Test (name) { this.name = name; this.test = '????'; } Test.prototype.test2 = function () { console.log('测试原型链上的方法!'); } function _new () { let newObj = {}; let Constructor = Array.prototype.shift.call(arguments); newObj.__proto__ = Constructor.prototype; Constructor.apply(newObj,arguments); return newObj; } var t = _new(Test,'yz'); t.test2();
相關建議:
以上是如何實作js中new的功能? js中new的用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!