Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.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中的所有键是否为true_Javascript_Jquery - Fatal编程技术网

Javascript 如何检查json中的所有键是否为true

Javascript 如何检查json中的所有键是否为true,javascript,jquery,Javascript,Jquery,如何检查json对象中的所有键是否都等于true? 我的物体看起来像这样 success = { "first_name": false, "middle_name": false, "last_name": false, "d_o_b": false, "sex": false, "email": false, "re_email": false, "password": false, "re_password":

如何检查json对象中的所有键是否都等于true? 我的物体看起来像这样

    success = {
    "first_name": false,
    "middle_name": false,
    "last_name": false,
    "d_o_b": false,
    "sex": false,
    "email": false,
    "re_email": false,
    "password": false,
    "re_password": false
};
我处理了这个对象,结果一切正常的东西都变成了真的, 现在在最后我想检查一下,如果所有的都是真的,我该怎么做呢?
thank's:-)

最直接的方法是使用
for
循环。这将确保它可以与可能不支持迭代器的旧浏览器一起工作

var all_true = true;
for (var s in success) {
    if (!success[s]) {
        all_true = false;
        break;
    }
}

严格说来,
中断是不必要的,但如果您所关心的全部都是错误的,那么它将使环路短路。

或者从功能上来说:

Object.keys(success).every(function(key) {
  return success[key];
});
var everythingOK=true;
for(var i=0;i

这应该可以;)

+1-您可能会注意到,此代码在较旧的浏览器中会失败。以前从未见过。令人惊叹的!
var everythingOK = true;

for (var i = 0; i < success.length; i++)
{
    if( ! success[i])
    {
         everythingOK = false;
         break;
    }
} 


if(everythingOK) 
    alert('Success!');