首页 > 解决方案 > 将第一个值设置为 Javascript 数组中的键

问题描述

根据选定的 DataTables 行创建数组

$('#savenlp').click(recordjourney);

function recordjourney() {
var data = table.rows(['.selected']).data().toArray();
console.log( (data) );
console.log( JSON.stringify(data) );
}

data返回

0 : (8) ["Which", "TitleCase", "QuestionWord", "", "", "", "", ""]

JSON.stringify(data)返回

[["baseball","Noun","Singular","","","","",""]]

此信息是动态生成的,因此我只是希望获取第一个值(在本例中baseball)并将其转换为类似

  "baseball": [
    "Noun",
    "Singular"
  ]

我可以返回第一个值(我想要使用的键)

alert(data[0][0]);

我更擅长 PHP,但我越来越多地学习 javascript/jquery。

我的理解是 javascript 没有关联数组,所以我对如何生成它有点困惑。

标签: javascriptjqueryarrays

解决方案


const data = [
  ["baseball","Noun","Singular","","","","",""],
  ["baseballs","Noun","","Plural","","","","",]
];
const mappedData = data.reduce((acc, row) => { acc[row.shift()] = row.filter(d => d !== ''); return acc; }, {});
console.log(mappedData);


推荐阅读