Javascript-运算符和流程控制
目录
Javascript 运算符和流程控制
5.1 赋值、算术、自增、自减运算符
赋值运算符
var url = 'csdn.net'
算术运算符
+、-、×、/、%
自增自减运算符
前置操作:在表达式最先执行
后置操作:在表达式最后执行
示例
var a = 2 console.log(30 + a++) // 32 console.log(30 + ++a) // 34
第一个表达式中a先和30相加,然后再自增为3
第二个表达式a先自增为4,然后再和30相加得34
5.2 比较、逻辑运算符
比较运算符
运算符 说明 > 大于 < 小于 >= 大于等于 <= 小于等于 == 强制类型转换比较 === 不强制类型转换比较 逻辑运算符
逻辑与
&&
- 当运算符左边表达式为false,立马返回当前值;当左边表达式为true时,立马返回右边值
逻辑或
||
- 当运算符两边有一个为true时,则返回为true的值,两边都为false,则返回右边的值
逻辑非
!
优先级
//&& 的优先级高所以结果是 true console.log(true || false && false); // true //⽤ () 来提高优先级 console.log((true || false) && false);
示例
var a = -1; if(0 < a < 2){ console.log(1111); } // 1111 var a = 1; var b = '1'; console.log(a == b); // true var a = 1; var b = '1'; console.log(a === b); // false var a = 'as'; var b = 34; console.log(a && b); //34 var a = ''; var b = 34; console.log(a && b); // '' var a = ''; var b = 1; console.log(a || b); // 1 var a = 3; var b = 4; console.log(a || b); // 3
5.3 if、if/else、三元表达式流程控制
if
// 当条件为真时执行表达式代码块 if(){} //如果只有一条代码块,可以不用写{} if () console.log(xx)
if/else
if (){ // 条件为true时执行 }else{ // 条件为false时执行 } if(){ // 条件1为true时执行 }else if{ // 条件2为true时执行 }else{ // 条件都不满足时执行 }
三元表达式
语法
条件 ? 表达式1: 表达式2 // 条件为true时,执行表达式1,否则执行表达式2
使用场景
- 非真即假
5.4 swith语句
switch
语法
switch(表达式){ case 1: // 代码块 break case 2: // 代码块 break default: // 默认代码块 } var weather = '下雨' switch(weather){ case '晴朗': console.log('打篮球') break case '下雨': console.log('收衣服') break case '下雪': console.log('堆雪人') default: console.log('学习') break }
和if的选择
- 有3、4种以上条件的时候,可以考虑使用switch
注意
- 内部严格按照===的规则,一定要值和类型相等才行,且使用break语句打断程序
5.5 for循环
语法
for(语句1; 语句2; 语句3){ // 要重复的代码块 } // 语句1 声明一个变量 // 语句2 指定循环跳出条件 // 语句3 控制变量的变化
打印1到10的和
var sum = 0 for (var i = 1; i <= 10; i++){ sum +=i } console.log(sum) // 55
5.6 while循环
语法
var a = 0 while(条件表达式或变量){ // 代码块 a++ } do{ // 代码块,至少能被执行一次 // 执行完一次后,满足while里面的条件则继续执行 }while(条件)