簡體   English   中英

javascript(angularjs)檢查js對象中是否存在值

[英]javascript (angularjs) check if value exists in js object

我有以下對象

{
  0 : false,
  1 : true,
  2 : false
}

我需要做的是我遍歷這些並將它們中的某些條件設置為true或false,但我需要一個函數來檢查對象中是否將所有值都設置為true或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;
}

這是一種簡單的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);

MDN鏈接中有關hasOwnProperty更多信息

在現代瀏覽器(即IE 9 +,Chrome 5+等)中,代碼可以簡化如下:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM