运算符

运算符

递增递减运算符

算术运算符

x +- */%       
console.log(12+34);        
console.log(34-12);        
console.log(2*8);      
console.log(98/23);      
console.log(98%9);

递增递减运算符

如果需要反復的给数字变量添加和减去1,可以使用递增(++) 递减(--)运算符

++ -- 可以放到变量的前面 (前置递增)也可以放到变量的后面(后置递增)

递增递减运算符必须和变量配合使用

var num = 3;
​
num += 1;   //num = num +1 把=右边的值赋给等号左边 4
​
num -= 1;   //num = num -1   3
​
num *= 7;   //num = num * 7   21
​
num /=2 ;   // num = num / 2;   10.5
​
num %= 3   //num = num % 3;` 1.5
// console.log(num)
​
​
// 前置递增就是自加1   ++num 类似于 num = num +1
​
var num1 = 10;
num1 ++;   //11
​
++ num1; //12
​
// 前置递增 和后置递增如果单独使用,效果一样,都是自增,类似于 num1 = num1 +1
​
​
// 先加1 (自身自增变为13 ) 后运算
console.log(++num1 + 10);   //23   num1 = 13
// 后置递增 先运算 后自增
console.log( num1++ +10);   //23   num1 = 14
​
/*
前置递增 和后置递增如果单独使用,效果一样,都是自增,类似于 num1 = num1 +1
前置递增 先自身加1 后运算
后置递增 先运算 后加1
*/
​
​
// console.log( num1++ *10)
​
​
​
var age=13;
++ age;
var b = ++age +2;
console.log(age,b) //15,17
// --------------------
​
​
var i = 10;
alert(10 + i++); //alert(20) i =11
​
// --------------
​
var b = 2;
var c = 3;
console.log(b++ +c); //5   b=3 c =3
console.log(b) //3
console.log(++b + c) //b=4 7
console.log(b); //4
console.log(b++ + ++c); //c =4 4+4=8 b=5
console.log(b + "," +c) //5,4
​
// 左边后置加的时候为5   后面的是前置 但是左边先的,结束加1 所以有++b = 7
console.log(b++ + ++b); //5 + (6+1) =12
console.log(b) //7
​
​
// 递减
​
var bb = 13;
bb --;
-- bb;
console.log(bb) //11
​
console.log(bb-- - --bb)   //11 - (10-1)=2
​
// console.log(--bb - bb--); //10 -10 =0`2`2

比较运算符

两个数据进行比较使用的运算符,比较运算符会返回一个布尔值 true/false

        // 小于号  <
      console.log(4<9); //true
      // 大于号 >
      console.log(8>10); //false
​
      // 大于等于
      console.log(9>=9); //true
​
      // 小于等于
      console.log(3<=2); //false
​
      // 不等于
      console.log(3!=5); //true
​
      // ==   只判断值
      // 默认转换数据类型,把字符串型的数字转换为数字型 值相等就行
          console.log(13=="13"); //true
          console.log(3==5); //false
​
          console.log("hello"=="liudh"); //false
​
      // ===   值和数据类型都必须相等
      console.log(13==="13"); //false

逻辑运算符

/* 
&& 逻辑与 and   true && false
|| 逻辑或 or   true || false
! 逻辑非 not !true
*/
​
// 两侧都为true 结果为true 只要有一侧为false 结果是false
console.log(true && true);   //true
console.log(true && false); //fase
console.log(false && true); //fase
console.log(false && false);//fase
​
console.log(3>5 && 3>2);   //false && true   false
console.log(3<5 && 3>2) ; //true && true   true
​
  // console.log(1 && 0);
​
​
// 逻辑或   两侧都为false 结果才为false 只要有一侧为true 结果就是true
console.log(true || true);   //true
console.log(true || false); //true
console.log(false || true); //true
console.log(false || false);//fase
​
console.log(3>5 || 3>2);   //false && true   true
console.log(3<5 || 3>2) ; //true && true   true
​
​
// 逻辑非
console.log(!true);   //false
console.log(!false); //true
console.log("---------------------------------------------------")
​
​
​
/*
短路运算原理:有多个表达式(值)时,左侧的表达式可以确定结果时,就不再继续运算右边的表达式的值
​
​
​
*/
​
// 逻辑与
// 表达式1 && 表达式2
// 第一个表达式值为真,返回第二个表达式
// 第一个表达式为假,返回第一个表达式
console.log((3+4)&&9); //9
console.log(1&&0); //0
console.log(0&&1); //0
​
console.log("-------------")
// 逻辑或
// 表达式1 || 表达式2
// 第一个表达式值为真,返回第1个表达式
// 第一个表达式为假,返回第2个表达式
console.log((3+4)||9); //7
console.log(1||0); //1
console.log(0||1); //1
​
​
var num;
console.log(num&&num>3) ; //
console.log("-------------")
​
console.log(null && 5); //null
console.log(undefined && 7) // undefined
console.log("123"&&8); //8
console.log(""&&8); //""
 

三目(三元)运算符

// 条件?'表达式1':"表达式2"
​
var num = 2;
​
num>2?console.log(23):console.log(34)
​
var b = num>1?"hello":"word";
console.log(b)

运算符优先级

优先级                    运算符
1                         小括号
2                         ++ -- !
3                         算数运算符   先 * / % 后 + -
4                         > >= <
5                         == != ===
6                           先&& 后 ||
7                             =

 

posted @ 2022-08-01 22:45  YBYZ  阅读(106)  评论(0)    收藏  举报