我有一个包含节点和边缘的数组,我想将每个公司的名称更改为缩写,例如Anglo American将是AA并从这些字符串中删除plc是否可以将此对象复制到另一个'var '然后调整数据并传递到d3.layout?
DefaultTableModel
及以下是同一物体的边缘。
array (size=2)
'nodes' =>
array (size=33)
0 =>
array (size=1)
'name' => string 'Anglo American plc' (length=18)
1 =>
array (size=1)
'name' => string 'Associated British Foods plc' (length=28)
2 =>
array (size=1)
'name' => string 'Admiral Group plc' (length=17)
3 =>
array (size=1)
'name' => string 'ARM Holdings plc' (length=16)
4 =>
array (size=1)
'name' => string 'Aviva plc' (length=9)
5 =>
array (size=1)
'name' => string 'BAE Systems plc' (length=15)
6 =>
array (size=1)
'name' => string 'Barclays PLC' (length=12)
答案 0 :(得分:2)
关于问题下的评论,这可能是最简单的解决方案(as line of code)
:
var data = [{
'name': 'Anglo American plc'
}, {
'name': 'Associated British Foods plc'
}, {
'name': 'Admiral Group plc'
}, {
'name': 'ARM Holdings plc'
}, {
'name': 'Aviva plc'
}, {
'name': 'BAE Systems plc'
}, {
'name': 'Barclays PLC'
}];
data.forEach(d => {d.name = d.name.split(' ').map(w => w[0]).join('')});
console.log(data);