JavaScript 笔记(三):运算符

JavaScript 笔记(三):运算符

算数运算符

  • +

任何数据与 NaN 运算,结果均为 NaN,此外,如果任何数据与字符串运算,那么将转换为字符串的拼接

  • -
  • *
  • /

任何数据与 NaN 运算,结果均为 NaN,此外,如果任何数据与字符串运算,那么将字符串转换为数值之后减法运算,如果被除数除以零,那么结果为 Infinity

  • %

如果被除数除以零,那么结果为 NaN,而结果的正负性取决于被除数的正负性

赋值运算符

  • 基本赋值
    • =
  • 复合赋值
    • +=
    • -=
    • *=
    • /=
    • %=

自增自减运算符

  • ++
  • --

关系运算符

  • >
  • <
  • >=
  • <=
  • ==
  • !=

任何非数值类型的数据参与关系运算时,均会先转换为数值类型;如果参与运算的数值(或被转换之后的结果)为 NaN,那么结果一定为 false;如果参与关系运算的均为字符串,那么会将 Unicode 编码以字典序来比较,以下是一些特殊的比较结果:

null == 0;          // false
undefined == 0;     // false
null == undefined;  // true
NaN == NaN;         // false

根据以上内容,显然不能使用 == 运算符判断一个数值是否为 NaN,如果要判断一个数值是否为 NaN,那么可以使用方法 isNaN 来判断,示例如下:

let a = NaN;
let res = isNaN(a);
console.log(res);   // true
  • ===
  • !==

运算符 ===== 的区别在于,== 仅判断取值是否相同,不会判断类型是否相同,只要取值相同,那么结果就会 true,而 === 不仅会判断取值是否相同,也会判断类型是否相同,只有当取值与类型均相同时,结果才会 true,以下是一些示例:

let res = 520 == "520";
console.log(res);   // true

res = 520 === "520";
console.log(res);   // false

res = 520 != "520";
console.log(res);   // false

res = 520 !== "520";
console.log(res);   // true

逻辑运算符

  • &&
  • ||

在运算符 &&|| 中均存在短路求值现象,即如果左操作数的结果已经可以决定逻辑表达式的结果,那么将不会计算由操作数;此外,如果逻辑运算符两侧的数据不是 Boolean 类型,那么结果会返回相应的数据,而不是 true 或者 false,相应的规则本质上遵循短路求值

  • !

逗号运算符

  • ,

在 JavaScript 中,逗号运算符一般用于简化代码,示例如下:

let a, b;
a = 5, b = 10;

逗号运算符的运算结果为最后一个表达式(最右侧的表达式)的结果

三目运算符

  • ?:
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值