条件语句
<script> /* 条件语句 */ /* if (条件) { // ()最终都会转换为布尔值,只有为true的时候,才会进来 // 条件满足执行代码... } */ /* 单向分支语句 */ /* if (1 > 0) { console.log('满足条件啦~~~'); } */ // if条件不满足就会进到else「只可能进入一个」 /* if (1 < 0) { console.log('满足'); } else { console.log('哈哈哈哈哈'); } */ // 最终都是布尔值,true才能进去对应的代码块执行代码 if (!(-1 > 0)) { console.log('1>0'); } else if (2 < 0) { console.log('2>0'); } else if (3 > 0) { console.log('3 > 0'); } else { console.log('hehehe'); } </script>
switch和case
<script> var a = 100;//100=='100' // if 里面两个等也可以 if (a == '100') { console.log('今天🌧'); } switch (a) { case 100://必须是三个等(三个等叫绝对相等,一模一样才可以)a===100 console.log('今天🌧'); break;//一定要写,如果不写,无论下一个条件是否满足,都会进去,一直遇到break为止 case 200: console.log('今天晴天'); break; default://相当于else console.log('在家待着'); // break;//这个break可以省略 } </script>
条件语句判断规则
<script> // 1.如果是引用数据类型,就看空间地址 var a = {}; var b = a; console.log(a == b); console.log({} == {}); console.log([] == []); </script>
循环语句
<script> // 两者的区别:while满足条件才会执行代码 // do while 无论条件满不满足,至少都会执行一次代码 /* while (1 == 2) { console.log(1); } */ /* do { console.log(11); } while (1 == 1); */ /* do { console.log(11); } while (1 == 2); */ /* 第一步:var i=0 第二步:i<3 第三步:条件满足就会进入循环体里面执行代码 第一步:i++(i加1) i=1 第二步:i<3 第三步:条件满足就会进入循环体里面执行代码 第一步:i++ i=2 第二步:i<3 第三步:条件满足就会进入循环体里面执行代码 第一步:i++ i=3 第二步:i<3 第三步:条件不满足跳出for循环 */ // i 循环变量 i=0 i的初始值 // i < 3 循环的条件 // i++ 循环的步长 i=i+1 i=i+3-->i+=3(重要!!) // for (var i = 0; i < 3; i++) { // console.log('兄弟们好'); // } /* for循环去求1到10的和 */ /* var total = 0; for (var i = 1; i < 11; i++) { // total = total + i; total += i; } console.log(total); */ /* 把数组[1,65,3,4,20]里面的5个元素累加 */ /* var ary = [1, 65, 3, 4, 20]; var total = 0; for (var i = 0; i < 5; i++) { // console.log(ary[i]); total = total + ary[i]; // total += ary[i]; } console.log(total); */ var ary = [1, 65, 3, 4, 20]; var total = 0; for (var i = 0; i < ary.length; i++) { // console.log(ary[i]); total = total + ary[i]; // total += ary[i]; } console.log(total); </script>
break和continue
<script> /* for (var i = 0; i < 4; i++) { console.log(i); break;//停止整个循环 } */ /* for (var i = 0; i < 6; i++) { if (i == 4) { continue;//结束本轮循环,进行下一轮循环 } console.log(i);//0 1 2 3 5 } */ /* for (var i = 0; i < 10; i++) { // i=0 -->2-->4-->6-->8 if (i < 5) { i++;//i=1-->3-->5 continue; } if (i > 7) { i += 2;//i=i+2-->i=10 break; } i += 1;//i=i+1-->i=7 } console.log(i);//10 */ /* for (var i = 1; i <= 10; i += 2) { // i=1 i=4 i=7 if (i <= 5) { i++;//i=2 i=5 continue; } else { i -= 2;//i=i-2 i=5 break; } i--; console.log(i); } console.log(i);//5 */ for (var i = 0; i < 10; i++) { console.log(i); break; } console.log(i); </script>
i++和++i
<script> /* ++在后 先别加 ++在前 先加1 */ /* var i = 5; var b = i++; console.log(b); */ /* var i = 5; var b = ++i; console.log(b); */ /* var i = 5; // 5 + 7 + 7 + 8 + 10 i = (i++) + (++i) + (i++) + (i++) + (++i); console.log(i); */ var i = 5; // 5 3 3 2 0 i = (i--) + (--i) + (i--) + (i--) + (--i); console.log(i); </script>
三元运算
<script> /* 三元运算(三目) */ var num = 5; /* if (num >= 5) { num++; } else { num--; } // 条件?条件成立执行这里的语句:条件不成立执行后面的语句 num >= 5 ? num++ : num--; */ /* 条件成立做一件事,不成立啥也不做,可以用null / undefined / void 0 占位*/ /* if (num >= 5) { num++; } num >= 5 ? num++ : null; num >= 5 ? num++ : undefined; num >= 5 ? num++ : void 0; */ /* 如果条件满足不止一条语句,用小括号包起来,语句之间用逗号隔开 */ /* if (num >= 5) { num++; num += 2; } num >= 5 ? (num++, num += 2) : null; */ /* 嵌套的该如何写? */ var num = 12; if (num > 0) { if (num < 10) { num++; } else { num--; } } else { if (num == 0) { num++; num = num / 10; } } // num > 0 ? (num < 10 ? num++ : num--) : (num == 0 ? (num++, num = num / 10) : null) </script>