爲什麼說new是一顆語法糖呢?
因爲其實在new的操作過程中,就是將改變了對象的_proto_
屬性以及對象的一些屬性。這通過一個函數也可以做到,比如:
var instance = function() {
var temp = {};
temp._proto_ = subType.prototype;
temp.id = 2017;
temp.name = 'amy';
return temp;
}
不這麼做的原因有二:
1. _proto_
屬性不是標準屬性,不推薦使用
2. 代碼太多了呀。