数组中项目的动态名称 jQuery

Dynamic name of item in array jQuery

我有代码:

line:1       var listInput = $('input.model');
line:2       var listVariable = [];
line:3       $.each(listInput, function (index, val) {      
line:4             var variable = $(val).data('name');
line:5             var valOf = $(val).val();
line:6             var item = { variable : valOf };
line:7             listVariable.push(item);
line:8       });

我想要第 6 行中的 "variable" 即第 4 行中的 "variable"

请帮助我,对不起我的英语。

您需要使用 Bracket notation 来使用动态密钥填充 item 的 属性。

$.each(listInput, function (index, val) {      
    var item = {}; //Create object
    item[$(val).data('name')] = $(val).val(); //Set the value
    listVariable.push(item);
});

或者,您可以将 .map().get()

一起使用
var listVariable = listInput.map(function(){
    var item = {};
    item[$(this).data('name')] = $(this).val();     
    return item;
}).get();