解析JSON在JS和比较键值

问题描述:

我有一个JSON数据解析JSON在JS和比较键值

{ 
"FrontLeft" : "FALSE", 
"FrontRight" : "FALSE", 
"RearLeft" : "FALSE", 
"RearRight" : "TRUE" } 

我使用AJAX和解析的文本文件中读取这些数据。

function loadDoc() 
    { 
    var xhttp = new XMLHttpRequest(); 
    xhttp.onreadystatechange = function() { 
    if (xhttp.readyState == 4 && xhttp.status == 200) { 

     var arrLines = xhttp.responseText; 
     alert (arrLines); 
     var obj = JSON.parse(arrLines); 
    /* 
     Need to compare values of each key 
     */ 


    } 
    }; 

如何获取每个键的值?

+0

你打算如何比较这些值? – RomanPerekhrest

您可以访问值在这样的对象,

obj.FrontLeft  //this will give you "FALSE" 
obj.FrontRight //this will give you "FALSE" 

obj['FrontLeft']也会给你同样的结果。

您可以使用循环:

for (var key in p) { 
if (p.hasOwnProperty(key)) { 
    console.log(key + " -> " + p[key]); 
} 
} 

或者你可以使用Object.keys(),见MDN documentation

var obj = { 'FrontLeft' : '1', 'FrontLeft1' : '2' }; 
var keys = Object.keys(foo); // ['FrontLeft', 'FrontLeft1'] 

另一种方式可能是为可能的,但它并没有宽屏幕浏览器支持see MDN documentation