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 ;