0

我有 JSON:{"status":"ok","squares":{"3x13":"0","3x12":0,"4x12":0,"2x13":0,"4x13":0,"4x14":2}}

我如何将其转换为 javascript 中的键值数组?

        for (var s in s.squares) {
            console.log(s);
        }

仅给出键,例如 3x13、3x12。如何获取值?

PS对不起英语不好。

4

2 回答 2

2

如果 JSON 是字符串,您可以使用jQuery.parseJSON将其转换为 JSON 对象。如果您有对象,请使用

for (var key in json) {
    console.log("key:", key, "value:", json[key]);
}
于 2012-04-29T19:42:38.523 回答
2

您的循环for (var s in s.squares)将迭代 s.squares 引用的对象的每个属性以获取值,您只需这样做s.squares[s],循环将类似于:

for (var key in s.squares) {
   var value = s.squares[key];
}

您可能想保护自己一点,并编写如下迭代:

var squares = s.squares;
for (var key in squares) {
   if(squares.hasOwnProperty(key)){
      var value = squares[key];
   }
}
于 2012-04-29T19:46:48.087 回答