所以我知道如何像这样动态设置 key :

var hashObj = {};
hashObj[someValue] = otherValue;

但是我还没有看到有关map()的任何答案:
var list = ['a', 'b', 'c'];

var hashObject = list.map(function(someValue) {
    return { someValue: 'blah' };
});

// should return: [ {'a': 'blah'}, {'b': 'blah'}, {'c': 'blah'} ];

我知道我可以在for循环中执行此操作,但是仅使用map()在JavaScript中是不可能的吗?

最佳答案

您需要获取someValue作为其值进行评估。如果使用对象表示法,它将按字面意义解释为字符串。

您可以使用一个临时对象来实现您想要的:

var list = ['a', 'b', 'c'];

var hashObject = list.map(function(someValue) {
    var tmp = {};
    tmp[someValue] = 'blah';
    return tmp;
});

关于javascript - 在JavaScript中的map()内部动态设置键?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30205804/

10-11 21:34