json.stringify返回值

时间:2019-02-07 13:39:55

标签: json return-value stringify

我正在尝试获取JSON.stringify的数据类型以进行比较。

我曾经使用过:

var id = d.patogeno;
alert(id);

但是它告诉未定义的警报。

我有这个数据库:

var IDData = JSON.stringify([ 
 ["node/9837102", "node/26794", "Customer", "patongenoA", "1412451.0", 3, 520, "1412381"],
  ["node/9837102", "node/44210", "Customer", "patongenoB", "1436765.0", 2, 384, "1436693"],

]);


and the following function:

function createNodes(startnodes, endnodes, startnodetype, endnodetype, PayTime, TXN_COUNT, Total_Amt, SendTime) {

 var node_set = new Set();
  var links = [];
  var nodetype = d3.set();
  startnodes.forEach(function(src, i) {
    var tgt = endnodes[i];
    node_set.add({
      id: src,
      type: startnodetype[i]
    });
    node_set.add({
      id: tgt,
      type: endnodetype[i]
    });
    links.push({
      source: src,
      target: tgt,
      paytime: PayTime[i],
      patogeno: TXN_COUNT[i], // cambio ---- variable con cual trabajar
      total_amt: Total_Amt[i],
      SendTime: SendTime[i],
      value: 1
    });
  });

我需要知道每个patogeno的值,并将其返回以进行比较。有没有办法?或者如何返回特定值,例如:IDData中的“ patogenoB”

1 个答案:

答案 0 :(得分:0)

首先,JSON.stringify产生一个string

const obj = {example: 5}
const str = JSON.stringify(obj)
console.log(typeof str) // 'string'

如果您想要可寻址的对象,则可以执行与string相反的操作:

const str = '{"example": 5}'
const obj = JSON.parse(str)
console.log(obj.example) // 5

我不知道如何回答关于JSON.stringify的问题,也不知道为什么要将数组的数组转换为字符串而不是将其转换为可寻址的对象,但是到最后的createNodes中,您可以执行以下操作:

links.forEach((d) => console.log(d.patogeno))