Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.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(angularjs)检查js对象中是否存在值_Javascript_Angularjs_Object - Fatal编程技术网

javascript(angularjs)检查js对象中是否存在值

javascript(angularjs)检查js对象中是否存在值,javascript,angularjs,object,Javascript,Angularjs,Object,我有以下目标 { 0 : false, 1 : true, 2 : false } 我需要做的是循环这些,并根据条件将其中一些设置为true或false,但我需要一个函数来检查是否所有值都设置为true,或者对象中是否存在false 我有以下检查值是否为false来执行某些操作 angular.forEach($scope.keyFiles, function (val, key) { if(val == false) { $scope

我有以下目标

{
  0 : false,
  1 : true,
  2 : false
}
我需要做的是循环这些,并根据条件将其中一些设置为true或false,但我需要一个函数来检查是否所有值都设置为true,或者对象中是否存在false

我有以下检查值是否为false来执行某些操作

 angular.forEach($scope.keyFiles, function (val, key) {
        if(val == false) {
              $scope.loadCanvas(key);
              return key;
        }
 });
但是我现在需要一些东西来检查任何值中是否存在false,以及是否所有值都设置为true


我是javascript新手,所以如果这听起来像一个简单的解决方案,请原谅

希望这就是你想要的

function containsFalse(obj){
    for(var prop in obj){
       if(obj[prop] === false) return true;
    }
    return false;
}

希望这就是你要找的

function containsFalse(obj){
    for(var prop in obj){
       if(obj[prop] === false) return true;
    }
    return false;
}

下面是一种简单的javascript方法:

var keyFiles = {
  0 : false,
  1 : true,
  2 : false
};

var falseExists = false;
for (var prop in keyFiles) {
    if (keyFiles.hasOwnProperty(prop) && keyFiles[prop] === false) {
        falseExists = true;
        break;
    }
}

console.log(falseExists);
更多关于
hasOwnProperty
的信息

在现代浏览器(即IE 9+、Chrome 5+等)中,代码可以简化如下:

for (var prop in Object.getOwnPropertyNames(keyFiles)) {
    if (keyFiles[prop] === false) {
        falseExists = true;
        break;
    }
}

下面是一种简单的javascript方法:

var keyFiles = {
  0 : false,
  1 : true,
  2 : false
};

var falseExists = false;
for (var prop in keyFiles) {
    if (keyFiles.hasOwnProperty(prop) && keyFiles[prop] === false) {
        falseExists = true;
        break;
    }
}

console.log(falseExists);
更多关于
hasOwnProperty
的信息

在现代浏览器(即IE 9+、Chrome 5+等)中,代码可以简化如下:

for (var prop in Object.getOwnPropertyNames(keyFiles)) {
    if (keyFiles[prop] === false) {
        falseExists = true;
        break;
    }
}

这实际上只是一次检查一个值,看看它是假还是真。如果第一个值为真,其余值为假,那么它将假定所有值都为真true@Yeak那不是真的。使用上述代码进行试运行。当该方法第一次遇到
false
作为属性值时,将返回
true
。如果不存在这样的属性,它将返回
false
,这是请求no的内容。这将遍历对象的每个属性并检查它是否为false。如果没有,它将继续到下一个属性。若在迭代结束时找不到任何值,则返回false。实际上,每次只检查一个值,看看它是false还是true。如果第一个值为真,其余值为假,那么它将假定所有值都为真true@Yeak那不是真的。使用上述代码进行试运行。当该方法第一次遇到
false
作为属性值时,将返回
true
。如果不存在这样的属性,它将返回
false
,这是请求no的内容。这将遍历对象的每个属性并检查它是否为false。如果没有,它将继续到下一个属性。若在迭代结束时找不到,则返回false。