javascript (angularjs) 检查js对象中是否存在值
javascript (angularjs) check if value exists in js object
我有以下对象
{
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;
}
这是一个简单的 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 link
中详细了解 hasOwnProperty
在现代浏览器(即 IE 9+、Chrome 5+ 等)中,代码可以简化如下:
for (var prop in Object.getOwnPropertyNames(keyFiles)) {
if (keyFiles[prop] === false) {
falseExists = true;
break;
}
}
我有以下对象
{
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;
}
这是一个简单的 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 link
中详细了解hasOwnProperty
在现代浏览器(即 IE 9+、Chrome 5+ 等)中,代码可以简化如下:
for (var prop in Object.getOwnPropertyNames(keyFiles)) {
if (keyFiles[prop] === false) {
falseExists = true;
break;
}
}