我是一個名爲Duckuino的項目的合作者,模塊加載了eval()
執行另一個文件的內容,其中new Object()
裏面,我想要項目別名,以避免重複代碼兩次,如下所示:如何複製對象內聯定義中的項目?
new Object({
commands: {
aVeryComplexCommand: function(WithParams) {
// Complex content
},
anAliasForTheCommand: //something which point to 'aVeryComplexCommand'
}
});
請注意,我不能把代碼new Object()
聲明之後,因爲它可以由eval()
被誤解,我不想修改,因爲別名模塊特定的它加載模塊的代碼。
感謝提前!
編輯:從兩個尖尖和Nathan P.的回答工作,所以我會有關討論與我的其他合作者,我會有效的答案,我們使用。
你不能這樣做,在JavaScript中的對象初始化。你必須使用一個單獨的聲明。 – Pointy
@Pointy:沒有解決方法或怪異的代碼與'this'語句或任何東西? – Nurrl
看到我的答案; 'this'不涉及對象初始值設定項。 – Pointy