有没有办法比较不同阵列之间的字符串?

问题描述 投票:-1回答:1

我目前正在研究一种可视化国际贸易数据的数据可视化工具。我在一个csv中有交易数据,我把它放在数组nested_data和d3.js中,但有些商品名称太长而且缩短为'...',如下所示:

Afghanistan,"2012","2 Grondstoffen niet eetbaar behalve...","Invoerwaarde","mln euro","."

在另一个数组(SITCArray)中,我有缩写的名称和全名,如下所示:

let SITCArray = [
{
"A018540": {
   "Title": "2 Grondstoffen, niet eetbaar, behalve...",
   "Description": "2 Grondstoffen, niet eetbaar, behalve brandstoffen"
},

我想要做的是遍历两个数组,如果SITCArray.Title匹配nested_data中的字符串,请用SITCArray.Description替换该字符串。这可能吗?我无法弄清楚。

javascript arrays d3.js
1个回答
0
投票

您可以迭代SITCArray,destructure标题和描述。如果Title与嵌套数组中的字符串匹配,则使用Description更新该字符串。

const nested = ['Afghanistan', '2012', '2 Grondstoffen, niet eetbaar, behalve...', 'Invoerwaarde', 'mln euro', '.'];
const SITCArray = [{'A018540': {'Title': '2 Grondstoffen, niet eetbaar, behalve...', 'Description': '2 Grondstoffen, niet eetbaar, behalve brandstoffen'}}];

const arr = SITCArray.forEach(obj => {
  const key = Object.keys(obj);
  const { Title, Description } = obj[key];
  const index = nested.findIndex(el => el === Title);
  if (index) nested[index] = Description;
});

console.log(nested);
© www.soinside.com 2019 - 2024. All rights reserved.