JS中的运算符

一元运算符

注:只能操作一个值的运算符,叫做一元运算符
如:
a++;
++a;
上述两个表达式都是进行+1操作。

a++;
【++后置,先取a的值,然后在进行+1操作。】
++a;
【++前置,先进行+1操作,然后再取a的值。】

a--;
--a;
同理。
例:

var a = 5;
  alert(a++);  //5
  alert(a);    //6

  alert(++a);  //6
  alert(a);    //6

【注】虽然都是进行+1操作,但是因为取值的时间点不一样,所以结果不一样

关系运算符

>、<、 <= 、>=、相等==、不等!=、全等(恒等)===、不全等(不恒等)!===
关系运算符中操作数为非数字的时候要遵从以下规律:
1、如果两个操作数都是数值,则数值比较。
例:
alert(5>3); //true
2、如果两个操作数都是字符串,则比较两个字符串对应的字符编码值(ASCII码表值)。
例:

alert("abc" > "abd"); //false
alert("a" > "b");     //false

字符串在比较时是逐位进行比较,比较出大小就会终止比较。
3、如果两个操作数有一个是数值,则将另一个转换为数值,再进行比较。

例:
alert(2 > ture); //true

在等于和不等的比较上,如果操作数为非数值,则遵从以下规律:
1、一个操作数为布尔值,则比较之前先将布尔值转换为数值,false转换0,true转换为1;
例:

alert(1 == true);  //true
alert(0 == false); //true

2、一个操作数为字符串,则比较之前先将字符串转换为数值,再进行比较。
例:

alert(20 == "20");  // true
alert(20 == "30");  // false

3、一个操作数为NaN,则 == 返回 false ,!== 返回 true,并且,NaN和NaN不等。
例:

alert(20 == NaN);   //false
alert(20 != NaN);   //true
alert(NaN != NaN);  //true

4、在全等和全不等中,只有值和数据类型都相等,才会返回true,否则返回false。
例:

alert(20 === "20");  //false
alert(20 === Number("20")); //true

逻辑运算符

1、 与运算
表达式1 && 表达式2
(只有当两个表达式的结果都为真的时候,与运算的结果才为true)
【短路操作:当表达式1为false的时候,表达式2就不会执行,直接判断整个与运算为false。】
例:

alert(5<3 && alert(a))  //false
//因为5<3 为false, 所以alert(a)就不会执行,就不会报错,而是直接返回false

2、 或运算
表达式1 || 表达式2
(只有当两个表达式的结果都为假的时候,或运算的结果才为false)
【短路操作:当表达式1为true的时候,表达式2就不会执行,直接判断整个表达式为true】
例:

alert( 5>3 || alert(a)); //true

3、 非运算
!表达式
非运算符可以用于任何值,无论这个值是什么数据类型,这个运算符都会返回一个布尔值。 它的流程是:先将这个值转换成布尔值,然后取反。
【非运算遵从以下规律:】
1、如果操作数是一个空字符串,返回true。

// alert(!"");     //true

2、如果操作数是一个非空字符串,返回false。

// alert(!"true"); //false

3、如果操作数是0,返回true。

// alert(!0);      //true

4、如果操作数是任意非0的数值(包括Infinity),返回false

// alert(!2);      //false
// alert(!Infinity); //false

5、如果操作数是NaN,返回true

// alert(!NaN);    //true

6、如果操作数是undefined,返回true

// alert(!undefined); //true
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值