1

可能重复:
使用变量访问对象
的属性 如何使用变量作为名称将属性添加到 JavaScript 对象?

我正在尝试实现以下目标,将匿名对象推送到数组中,但使用变量“名称”作为对象键。有什么想法我能做到这一点吗?

var json = $('form[name="edit-form"]').serializeArray();
var data = {};
data.user = [];
var l = json.length;
for(var i = 0; i < l; i++){
  var name = json[i].name;
  var value = json[i].value;
  data.user.push({[name]: value});
}
4

1 回答 1

4

像这样的东西?假设您要查找的是一个对象,其属性取自包含该值的 name 变量。

    var json = $('form[name="edit-form"]').serializeArray();
    var data = {};
    data.user = [];
    var l = json.length;
    for(var i = 0; i < l; i++){
        var name = json[i].name;
        var value = json[i].value;
        var tempObj = {};
        tempObj[name] = value;
        data.user.push(tempObj);
    }
于 2012-10-25T19:43:35.780 回答