for循环表达式:
简单循环:
var num = 0;
for(var i = 0;i<5;i++){
console.log(num+=1)
for(var i = 0;i<5;i++){
console.log(num+=1)
}
第一步 第二步 第三步
for (创建一个开始循环标记变量(初始化变量);循环的成立的条件; 定义循环后要执行的代码){ 条件成立执行的代码}
for (var i = 0; i < 3; i++){
// 条件成立,循环执行的代码
console.log(i);
// 条件成立,循环执行的代码
console.log(i);
}
// for 就是重复执行一些代码,我们可以控制整个执行过程,从定义起点标记,和重复执行的条件,执行完代码后标记的改变
for (var i = 0; i < 3; i++) {
console.log(i)
for (var i = 0; i < 3; i++) {
console.log(i)
}
console.log(i)//3
由于if语句中不存在块级作用域,所以在循环体外边我们可以访问调用循环体里边的变量;但是外边访问的是循环后的变量的值;如上边的代码:for里边循环得到的是1 2 3,在for外边访问得到的是3,整个循环后的值;
console.log(i)
// for 循环的应用
var ary = ['大狗子', '2狗子', '3狗子', '他们是奥特曼三人组'];
// 0 1 2 3
for (var i = 0; i < ary.length; i++) {
console.log(ary[i]);
if (i == 0) {
console.log('大狗子奥特曼')
} else if (i == 2) {
console.log(ary[i]+'最差的奥特曼')
}
}
for (var i = 0; i < ary.length; i++) {
console.log(ary[i]);
if (i == 0) {
console.log('大狗子奥特曼')
} else if (i == 2) {
console.log(ary[i]+'最差的奥特曼')
}
}
// 利用for的特性,把数组中的每一项拿出来; (遍历数组)
for循环的应用:数组的循环;
例子:for循环求数组的和;
var arr = [1,2,3,4];
var res = 0;
for(var i = 0;i<arr.length;i++){
res+=arr[i]
}
console.log(res)
var res = 0;
for(var i = 0;i<arr.length;i++){
res+=arr[i]
}
console.log(res)
for in循环:
作用目的:就是用来处理我们的对象数据类型;遍历出对象数据类型的,属性名;通过属性名我们还可以遍历出属性值;也就是枚举对象的属性;for in循环会把所有对象的属性都会返回一遍,但是顺序不可预测;
for in定义的变量都是字符串;
var obj = {
name:'zx',
age:26,
like:'二狗子'
};
// 创建一个变量,这个变量的作用就是代表我们的属性名(字符串格式)
// 遍历哪个对象我们的in后边就跟哪个对象
// for (var item in obj) {
// // item = 'name'
// // item = 'age'
// // item = 'like'
// console.log(item,obj[item])
// }
// for in循环也可遍历数组
// var ary = ['大狗','二狗','三狗','小狗'];
// for (var n in ary) {
// console.log(n,ary[n])
name:'zx',
age:26,
like:'二狗子'
};
// 创建一个变量,这个变量的作用就是代表我们的属性名(字符串格式)
// 遍历哪个对象我们的in后边就跟哪个对象
// for (var item in obj) {
// // item = 'name'
// // item = 'age'
// // item = 'like'
// console.log(item,obj[item])
// }
// for in循环也可遍历数组
// var ary = ['大狗','二狗','三狗','小狗'];
// for (var n in ary) {
// console.log(n,ary[n])
// }
例子:for in循环求数组的和;
var arr = [1,2,3,4];
var res = 0;
for(var i in arr){
res+=arr[i];
}
var res = 0;
for(var i in arr){
res+=arr[i];
}
console.log(res)
// while 循环
var num = 0;
// while (true) {
// console.log(num++)
// }
// while (循环成立的判断条件) { 条件成立执行的代码 }
while (num<10) {
console.log(num);
num++;
}
while:while'能够做到的for都可以做到,while做不到的for也做不到;
例子:while循环求数组的和:
var arr = [1,2,3,4];
var res = 0,i = 0;
while(i<arr.length){
res+=arr[i]
i++
}
console.log(res)
var res = 0,i = 0;
while(i<arr.length){
res+=arr[i]
i++
}
console.log(res)