如果可能的话,我需要在一行中实现这一点:
我有一个对象
var object1 = {};
object1['key_1'] = "value_1";
object1['key_2'] = "value_2";
object1['key_3'] = "value_3";
我需要将对象中的一项(不仅是值)传递给函数,键 - 仅字符串值
for (var key in object1)
FunctionTemp({key:object1[key]}); // - this don't work as I need, and eval() method I don't want
也许有这样的事情
FunctionTemp((new {})[key]=object1[key]) - its don't work!!! :)
最佳答案
由于您确实希望将其写在一行中,因此可以这样做:
var temp;
for (var key in object1)
FunctionTemp(((temp = {}) && (temp[key] = object1[key]))? temp: null);
但我认为它不再可读,最理想的解决方案是将其分成几行。
var temp;
for (var key in object1) {
temp = {};
temp[key] = object1[key];
FunctionTemp(temp);
}
关于javascript - 使用键 :value in one line 创建对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25475543/