从NodeJS中的JSON列表中获取键值

use*_*039 8 json node.js

我收到JSON对象作为对象列表:

result=[{"key1":"value1","key2":"value2"}]
Run Code Online (Sandbox Code Playgroud)

我试图从Node.js中的此列表中检索值.我用过JSON.stringify(result)但失败了.我一直在尝试迭代列表for(var key in result),没有运气,因为它打印每个项目作为一个键.

是否有人遇到类似问题或者已经通过此问题?请指出我正确的方向.

Flo*_* B. 15

如果您的结果是字符串,那么:

var obj = JSON.parse(result);
var keys = Object.keys(obj);
for (var i = 0; i < keys.length; i++) {
  console.log(obj[keys[i]]);
}
Run Code Online (Sandbox Code Playgroud)


vin*_*akj 5

看起来您指向了错误的对象。要么喜欢

var result = [{"key1":"value1","key2":"value2"}];
for(var key in result[0]){ alert(key);}
Run Code Online (Sandbox Code Playgroud)

或者

var keys = Object.keys([{"key1":"value1","key2":"value2"}][0]);
alert(keys);
Run Code Online (Sandbox Code Playgroud)


小智 5

好的,假设result这里是一个字符串,您需要做的第一件事就是将它转换(反序列化)为一个 JavaScript 对象。这样做的一个好方法是:

array = JSON.parse(result)
Run Code Online (Sandbox Code Playgroud)

接下来循环遍历数组中的每一项,对于每一项,你可以循环遍历键,如下所示:

for(var idx in array) {
  var item = array[idx];
  for(var key in item) {
    var value = item[key];
  }
}
Run Code Online (Sandbox Code Playgroud)