流星中可变键的替代方法
问题描述:
如何将变量值用作对象键?流星中可变键的替代方法
例如,将对象动态添加到Collection时。当我这样做时:
addToDB(type, account) {
Accounts.insert({type: account});
};
它不起作用,因为钥匙不能作为变量在这里。
答
JavaScript对象文字不支持动态键。
相反,你可以达到使用目的:
var obj = {};
var key = "some key";
obj[key] = "test";
你的情况:
addToDB(type, account) {
var obj = {};
obj[type] = account;
Accounts.insert(obj);
};
更多细节在这里: Creating object with dynamic keys
+0
你的答案不再准确。 ES6增加了对创建动态对象密钥的支持。如果上述问题的答案是 'addToDB(type,account){ Accounts.insert({[type]:account}); };' 也许你可以改善你的答案? – PaulT 2017-01-31 20:25:25
例如?你能举一个你想要实现的例子吗? – V31 2014-09-11 09:29:13