Appearance
循环操作语句
循环,重复做一件事情
for
javascript
for(设置循环起始值;设置循环执行的条件;步长累加){
// 循环体:重复做的事情都是在循环体重
}
1
2
3
2
3
- 设置初始值
- 验证条件
- 条件成立,执行循环体:不成立,循环借宿
- 步长累加
javascript
for(;i<5;;){
consloe.log(i);
//没有步长累加,我们的i永远是0,循环条件永远成立“死循环”;
//项目中不能出现死循环,一旦出现,循环下面的事情都做不了
}
1
2
3
4
5
2
3
4
5
break
结束整个循环:循环体重一旦遇到 break 首先后面代码不执行了,而且步长累加也不执行了,循环都结束了
for(var i=0;i<5;i+=2){
console.log(i)
break;
}
1
2
3
4
2
3
4
BAT 面试题
javascript
for(var i=1;i<10;i+=2){
if(i<5){
i++;
continue;
}else{
i+=3;
break;
}
console.log(i)
}
console.log(i) // =>10
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
continue
结束本轮循环,继续执行下一轮:循环体重 continue 后面的代码都不会在执行,它会直接的去执行步长,然后进行下一轮
javascript
for(var i=0;i<5;i+=2){
console.log(i)
continue;
}
1
2
3
4
2
3
4
for in
用来遍历(循环)对象键值对的
- var key;var attr(attribute);
- 对象中有多少键值对,我们的 for in 循环遍历多少次(多少次)
- 第一次循环 key 这个遍历存储的都是当前循环这个组键值队的属性名
- key 存储的值都是字符串格式的(不管属性名是否为数字)
- 在 for in 循环的遍历时候,大部分浏览器都是先把对象中的键值对进行排序(把数字属性的排在前面,并且排列的时候安卓数字由小达大排列), 其次在把非数字的属性名按照之前编写的顺序,循环的时候按照重新排列循序一次遍历(小数算作字母不要做数字)
javascript
var obj = {name:wjw,age:8,0:'wjh',3:'ylp',1:'cx'}
for(var key in obj){
console.log('ok')
// key 属性名 string
console.log(obj.key)
//获取obj中key这个属性对应的值 ->undefined <=> obj['key']
console.log(obj[key]);
//->每一次循环把key变脸存储的值(当前遍历的属性名)获取到放在中括号中,获取obj对应的属性值
}
for(var key in obj){
if(obj.hasOwnProperty(key)){
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15