/** 场景1
* 计算对象数组中每个电脑操作系统是否可用
* 大于16位操作系统表示可用,否则不可用
*/
var computers = [
{name:"Apple",ram:16},
{name:"IBM",ram:4},
{name:"Acer",ram:32}
];
var everyComputersCanRunProgram = false;
var someComputersCanRunProgram = true;
for(let i =0; i<computers.length; i++){
var answer = computers[i];
if(answer.ram > 16){
answer = everyComputersCanRunProgram;
}else{
answer = someComputersCanRunProgram;
}
console.log(answer);
}
/**
* Every: 一真即真
* Some: 一假即假
*/
var some = computers.some(function(x){
return x.ram > 16;
})
console.log(some);
var every = computers.every(function(x){
return x.ram > 16;
})
console.log(every);
some遍历到第一个ture值停止,every遍历所有值。
const items = [
{name:"自行车",price:200},
{name:"电视机",price:3000},
{name:"台式电脑",price:10000},
{name:"苹果手机",price:4000},
{name:"imac",price:2000},
{name:"键盘",price:60},
{name:"鼠标",price:20},
];
//判断数据中是否有小于100的商品
var panduan = items.some(function(x){
return x.price <100;
})
console.log(panduan);
//封装some
function some (array,cb){
for(let i = 0; i<array.length; i++){
if(cb(array[i])){
return true;
}
}return false;//写在if外,使得if遍历完整,后再判断
};
var getpanduan=some(items,function(x){
return x.price <100
})
console.log(getpanduan);