2
使用ES6的Reflect.construct後,我發現將對象類型參數化爲new關鍵字也可以。Reflect.construct vs new(對象類型在這裏)
https://jsfiddle.net/mnw349o5/
function Nice() {
return Date;
}
window.alert(new (Nice())); // will show the date today
window.alert(Reflect.construct(Nice(), [])); // same as above
window.alert(new Nice()); // not the intended
如果我還是用傳遞對象類型作爲新的關鍵字參數來創建動態的對象,因爲它似乎也工作的方法嗎?不使用Reflect.construct會減少項目的節點模塊依賴性。
目前我正在使用和聲反射來填充反射,所以我可以在基於ES5的TypeScript項目上使用它。
我不明白你在使用'Reflect.construct'時看到的優點。你能詳細說明嗎? – Bergi
「參數化」是什麼意思? – Bergi
@Bergi re「參數化」我不知道如何調用「新的開放圓括號對象類型閉括號」成語。這只是在JavaScript中我發現動態創建一個對象與'''新'''關鍵字是可能的。而在C#中,我將不得不使用Activator.CreateInstance,這與Reflect.construct類似。 –