【发布时间】:2017-08-02 11:34:05
【问题描述】:
我有两个对象。一个是单词数组,另一个给出第一个数组中两个单词之间的关系:
nodes = ["apple","cherry","pear","strawberry"]
data = [{word1 : "apple", word2 : "cherry" , weight : "0.1"},
{word1 : "apple", word2 : "strawberry" , weight : "0.2"},
{word1 : "cherry", word2 : "pear" , weight : "0.3"},
{word1 : "cherry", word2 : "strawberry" , weight : "0.4"},
{word1 : "strawberry", word2 : "pear" , weight : "0.5"}]
我想创建一个具有数据结构的新对象,而不是单词,而是它们的索引。像这样:
links = [{source : "0", target : "1" , value : "0.1"},
{source : "0", target : "3" , value : "0.2"},
{source : "1", target : "2" , value : "0.3"},
{source : "1", target : "3" , value : "0.4"},
{source : "3", target : "2" , value : "0.5"}]
到目前为止,我有这个:
for (var i = 0 ; i < nodes.length; i++) {
test[i] = nodes.findIndex(d => d == nodes[i]);
}
这给了我这个新数组,对应于来自nodes 的索引:
test = [0,1,2,3]
那么我现在该如何将这些索引分配给links 中的属性?
【问题讨论】:
标签: javascript arrays d3.js