我使用以下函数创建了一个关联数组。
function checkEmpty(){
var sizes = new Array();
var validate = new Array();
$j('div.option-fields').each(function(){
if($j(this).attr('id')) {
sizes.push($j(this).attr('id'));
}
});
for(var i=0; i< sizes.size(); i++){
$j("#"+sizes[i]+' input[type=text]').each(function(){
if($j(this).val()){
//validate.push(true);
validate[sizes[i]] = true;
}else{
//validate.push(false);
validate[sizes[i]] = false;
}
});
}
}
返回[size-278:true,size-287:true]
现在我想搜索这个结果是否包含false值, 或者不同索引的所有值是否相同。
我使用inArray但每次都给-1。
答案 0 :(得分:0)
要在关联数组中搜索值,您可以这样做:
listOfLanguagesAndTheirSubtags = {"Afrikaans" : "AF", "Dansk" : "DA", "Deutsch": "DE", "English": "EN", "Italiano" : "IT" };
var values = Object.values(listOfLanguagesAndTheirSubtags);
var subtagToFind = "AF";
if(values.includes(subtagToFind))
{
console.log('value is found');
}
else
{
console.log('value NOT found');
}
要搜索具有不同索引的所有值是否相同,可以进一步进行以下操作:
var numberOfOccurencesOfSubtag = values.filter(function(value){
return value === subtagToFind;}).length
if(numberOfOccurencesOfSubtag === values.length)
{
console.log("All values with different indices are the same");//... as subtagToFind
}
else
{
console.log("All values with different indices are NOT the same");//... as subtagToFind
}