Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么JSON.stringify返回未定义_Javascript_Json_Node.js - Fatal编程技术网

Javascript 为什么JSON.stringify返回未定义

Javascript 为什么JSON.stringify返回未定义,javascript,json,node.js,Javascript,Json,Node.js,为什么console.logJSON.stringifyrow.data返回未定义的值,以及如何修复它 从 因为row.data变量未定义 工作示例: for(var key in rows){ console.log(JSON.stringify(rows[key].data)) } 因为row.data变量未定义 工作示例: for(var key in rows){ console.log(JSON.stringify(rows[key].data)) } 因为行是一个数组 试

为什么console.logJSON.stringifyrow.data返回未定义的值,以及如何修复它

因为row.data变量未定义

工作示例:

for(var key in rows){
  console.log(JSON.stringify(rows[key].data))
}
因为row.data变量未定义

工作示例:

for(var key in rows){
  console.log(JSON.stringify(rows[key].data))
}

因为行是一个数组

试试这个,而不是for循环

rows.forEach(row => console.log(JSON.stringify(row.data)))

forEach是一个迭代器,可以调用数组

forEach方法对每个数组元素执行一次提供的函数

您还可以使用for循环

for(var i = 0; i < rows.length; i++) {
    console.log(JSON.stringify(rows[i].data))
}

因为行是一个数组

试试这个,而不是for循环

rows.forEach(row => console.log(JSON.stringify(row.data)))

forEach是一个迭代器,可以调用数组

forEach方法对每个数组元素执行一次提供的函数

您还可以使用for循环

for(var i = 0; i < rows.length; i++) {
    console.log(JSON.stringify(rows[i].data))
}
不应将for..in用于数组。在您的行中有索引,而不是值

更好的解决方案:

rows.forEach(row => console.log(JSON.stringify(row.data)));
不应将for..in用于数组。在您的行中有索引,而不是值

更好的解决方案:

rows.forEach(row => console.log(JSON.stringify(row.data)));

除了使用foreach解决方案,您还可以使用普通循环来实现这一点

    var data = '{"data":{"time":"2016-08-08T15:13:19.605234Z","x":20,"y":30}}{"data":{"time":"2016-08-08T15:13:19.609522Z","x":30,"y":40}}';

    var sanitized = '[' + data.replace(/}{/g, '},{') + ']';
    var rows = JSON.parse(sanitized);
    console.log(rows);

      for(var i=0;i < rows.length;i++){
         console.log(JSON.stringify(rows[i].data));
      }

除了使用foreach解决方案,您还可以使用普通循环来实现这一点

    var data = '{"data":{"time":"2016-08-08T15:13:19.605234Z","x":20,"y":30}}{"data":{"time":"2016-08-08T15:13:19.609522Z","x":30,"y":40}}';

    var sanitized = '[' + data.replace(/}{/g, '},{') + ']';
    var rows = JSON.parse(sanitized);
    console.log(rows);

      for(var i=0;i < rows.length;i++){
         console.log(JSON.stringify(rows[i].data));
      }