Javascript 为什么JSON.stringify返回未定义
为什么console.logJSON.stringifyrow.data返回未定义的值,以及如何修复它 从 因为row.data变量未定义 工作示例: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)) } 因为行是一个数组 试
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));
}