1
Javascript的問題。Javascript可以在數組中設置布爾值嗎?
正如標題所說,是否可以將布爾值(true
或false
)設置爲數組,並檢查這些數組中的任何一個之後是否退出陣列?
比方說,我有函數返回true
或false
。
示例代碼:(使用jQuery)
var abort = [];//make an empty array
function someFunc() {
var returnVal = false;
if(some condition) {
returnVal = true;
return returnVal;
}
return returnVal;
}
someElement.each(function() {
abort.push(someFunc()); //push true or false in array
});
//abort array will look eventually something like...
//[true, false, true, false, false, true, ...]
//check if `true` exists in array jQuery approach
var stop = ($.inArray(true, abort) > -1) ? true : false ;
if(stop) {
console.log('TRUE FOUND AT LEAST ONE IN ARRAY!');
}
這似乎工作確定。 但我只是想知道,如果這是正確的方式...
爲什麼你甚至認爲向數組中添加布爾值是不行的?你可以將任何值放入數組中! –
完美無瑕。儘管如此,我會將它縮短到'function somefunc(){return(some condition)}'。更普遍的是:你以後在'abort'中使用了不同的'Boolean'嗎?如果不是,則只需一個全局就足夠了:'someElement.each(function(){if(!stop){stop = someFunc()};});'在這種情況下也替換$ .inArray'。 – virtualnobi
你需要多少布爾值?因爲如果使用少於31個布爾值,單個整數可能會方便使用並且具有很好的性能。例如,你可能會看看我對這個問題的回答:http://stackoverflow.com/questions/18547164/how-to-use-unit8array-in-javascript/18548027#18548027 – GameAlchemist