JavaScript == === Object.is()
创始人
2025-05-31 23:19:10

文章目录

  • JavaScript == & === & Object.is()
      • == 相等运算符
      • === 全等运算符
      • Object.is() 值比较

JavaScript == & === & Object.is()

== 相等运算符

==相等运算符,会先进行类型转换,将2个操作数转为相同的类型,再比较2个值。

console.log("10" == 10); //true
console.log(1 == true); //true
console.log(+0 == -0); //true
console.log(NaN == NaN); //false

=== 全等运算符

===全等运算符,不会类型转换,只有当两个值的类型和值都相同时才会返回 true。

console.log("10" === 10); //false
console.log(1 === true); //false
console.log(+0 === -0); //true
console.log(NaN === NaN); //false

Object.is() 值比较

Object.is() 是 ES6新增的方法,用于比较两个值是否严格相等(即在所有情况下都返回相同的布尔值),与===类似,但有一些特殊情况下的行为不同。

console.log(Object.is("10", 10)); //false
console.log(Object.is(1, true)); //false
console.log(Object.is(+0, -0)); //false
console.log(Object.is(NaN, NaN)); //true

总的来说,建议在比较值的相等性时优先使用三等号===,因为它更加严格和可靠。而 Object.is() 则可以用于特殊情况下的比较,如判断 NaN 或 +0/-0。双等号==则应该避免使用,因为它的类型转换规则容易引起混淆和错误。

相关内容

热门资讯

铭记历史荣耀 积蓄统一大势 转自:贵州日报 历史回响激荡,时代步伐铿锵。岁末回望,2025年两岸关系在复杂严峻的风险挑战中...
贵阳综合保税区工业园区污染治理... 转自:贵州日报 (一)查阅途径 电话:18585743717;邮箱:1830656138...
获配金额超400亿元 浮盈比例... (来源:经济参考报) 2025年A股定增市场显著回暖,机构参与定增的热情也在攀升。Choice数据显...
补齐关键拼图 运营商首次入股个... (来源:经济参考报) 近日,朴道征信有限公司(以下简称“朴道征信”)正式引入中移投资控股有限责任公司...
《迎春图》与绵竹的春节传承 从画中走向画外:《迎春图》描绘的“打春”场景。清黄瑞鹄图据国家文物局官网  四川绵竹年画最具代表性的...