从嵌套数组中提取JavaScript对象

时间:2019-02-13 10:51:41

标签: javascript jquery arrays javascript-objects

我需要在对象内的数组内提取一个javascript对象。 “节点”和“链接”都是位于称为“图形”的javascript对象中的数组。

直到最近,代码一直运行良好,我不知道为什么。 下面的代码在Firefox中引发错误,提示未定义nodeSource。

基于关联节点分配边名称的功能:

function def_edge_name(graph) {
    $.each(graph["links"], function(index, value) {
        var idSource = value["source"];
        var idTarget = value["target"];

         // extracting corresponding nodes
         var nodeSource = graph["nodes"][idSource];
         var nodeTarget = graph["nodes"][idTarget];

         // name definition
         var name = nodeSource["name"] + '–' + nodeTarget["name"];
         // add to object
         value["name"] = name;
    });
}

图结构:

{…}
  directed: false
  graph: Object { reqId: 9213636161211742000, villes: (1) […], date: (1) […] }
  links: Array(31) [ {…}, {…}, {…}, … ]
  multigraph: false
  nodes: (32) […]
    0: {…}
      average_neighbor_degree: 31
      id: "273"
      lat: "19.05"
      lon: "-104.3333"
      name: "Manzanillo(MEX)"
      x: 0.8919986305871528
      y: 0.42029038000307156

目标是根据源/目标节点的名称为图的边缘分配名称。 “节点”和“链接”之间的链接是节点的“ id”。

0 个答案:

没有答案