for
迴圈的应用,除了捞取相同性质的资料外,我们也可以在执行的时候搭配判断式,来过滤出来我们想要取得的资料,以下就开始来写个範例:
我们先来假设,有一个小镇上,分别有三栋房子,分别为 Jerry
Tom
Jack
的,房子内依序有各个的房间数和人数(属性),因此建立一个 area
阵列来存放三栋房子(物件)的资料
var area=[ { house: 'Jerry', room: 3, people: 6, }, { house: 'Tom', room: 4, people: 10, }, { house: 'Jack', room: 6, people: 13, }]
那我们先写个 for
迴圈取出所有房子的人数吧
for(var i=0; i<area.length; i++){ console.log(area[i].people);}
这时候在 cosole 看,分别会是 6
10
13
,3个数字
那如果这时候我想要筛选出人数有超过7个以上的房子,就要在 for
迴圈加入判断式来过滤资料
for(var i=0; i<area.length; i++){ if(area[i].people > 7){ console.log(area[i].house+'的房子人数超过7个'); } }
此时在 console 看,会输出
Tom的房子人数超过7个
Jack的房子人数超过7个
利用 if
判断式来过滤资料,而判断的条件是每笔资料的 people
属性有超过 7,即会被输出在 console,每次变数 i
都会递增,依序检查每笔资料,有符合条件就输出在 console