Javascript 使用值创建JSON对象
我有以下价值观:Javascript 使用值创建JSON对象,javascript,jquery,Javascript,Jquery,我有以下价值观: var firstHeader = $('#header0').text(); // 6KP var secondHeader = $('#header1').text(); // 7KP var thirdHeader = $('#header2').text(); // 8KP var first = $('#input0').val(); // 77 var second = $('#input1').val(); //88 var third = $('#input2
var firstHeader = $('#header0').text(); // 6KP
var secondHeader = $('#header1').text(); // 7KP
var thirdHeader = $('#header2').text(); // 8KP
var first = $('#input0').val(); // 77
var second = $('#input1').val(); //88
var third = $('#input2').val(); // 99
我需要创建一个JSON对象来实现:
{6KP:77, 7KP:88, 8KP:99}
我试着这样做,但没有成功:
var data = { firstHeader: first, secondHeader: second, thirdHeader: third };
data = JSON.stringify(data, null, ' ');
我的回答是:
{firstHeader: 77, secondHeader:88, thirdHeader:99}
如何放置值而不是这些变量名?使用数组表示法,例如
var data = {};
data[firstHeader] = first;
如果您使用的是ES6,您可以使用速记:
var data = {
[firstHeader]: first,
// Etc.
};
您需要使用方括号将变量值作为键名进行求值:
var data = {};
data[firstHeader] = first;
data[secondHeader] = second;
data[thirdHeader] = third;
工作示例
var firstHeader='6KP';
var secondHeader='7KP';
var thirdHeader='8KP';
var first='77';
第二个变量='88';
第三个变量为'99';
变量数据={};
数据[firstHeader]=第一个;
数据[secondHeader]=秒;
数据[thirdHeader]=第三;
console.logJSON.stringifydata 换行
var data = { firstHeader: first, secondHeader: second, thirdHeader: third };
与
顺便说一句,我知道这有多个副本,所以首先搜索可能是最好的选择。@AnkitAgarwal如果您使用ES6,例如,传输或在支持它的环境中,它将是最好的选择。我没有提到它在本地工作——我说是故意使用ES6。
var data ={};
data[firstHeader]= first;
data[secondHeader]= second;
data[thirdHeader]: third ;