JavaScript 中 == 和 Object.is() 的区别

简介: JavaScript 中 == 和 Object.is() 的区别

在 JavaScript 中,== 是相等运算符,用于比较两个值是否相等。而 Object.is() 是一个方法,用于比较两个值是否完全相同。


区别如下:


  1. 数据类型比较:== 运算符在比较两个值之前会进行类型转换,而 Object.is() 不会进行类型转换。


console.log(1 == '1'); // true,进行了类型转换
console.log(Object.is(1, '1')); // false,没有进行类型转换


  1. NaN 的比较:== 运算符认为 NaN 与任何值都不相等,而 Object.is() 认为 NaN 与 NaN 相等。


console.log(NaN == NaN); // false
console.log(Object.is(NaN, NaN)); // true


  1. 0 和 -0 的比较:== 运算符认为 0 和 -0 相等,而 Object.is() 认为它们是不同的。


console.log(0 == -0); // true
console.log(Object.is(0, -0)); // false
相关文章
|
14天前
|
存储 JavaScript 索引
js开发:请解释什么是ES6的Map和Set,以及它们与普通对象和数组的区别。
ES6引入了Map和Set数据结构。Map的键可以是任意类型且有序,与对象的字符串或符号键不同;Set存储唯一值,无重复。两者皆可迭代,支持for...of循环。Map有get、set、has、delete等方法,Set有add、delete、has方法。示例展示了Map和Set的基本操作。
21 3
|
15天前
|
JavaScript 前端开发
js开发:请解释原型继承和类继承的区别。
JavaScript中的原型继承和类继承用于共享对象属性和方法。原型继承通过原型链实现共享,节省内存,但不支持私有属性。
19 0
|
9天前
|
前端开发 JavaScript
【Web 前端】 js中call、apply、bind有什么区别?
【4月更文挑战第22天】【Web 前端】 js中call、apply、bind有什么区别?
【Web 前端】 js中call、apply、bind有什么区别?
|
9天前
|
存储 前端开发 JavaScript
【Web 前端】JS数据类型有哪些?区别?
【4月更文挑战第22天】【Web 前端】JS数据类型有哪些?区别?
|
11天前
|
JavaScript 前端开发
js的let、const、var的区别以及应用案例
【4月更文挑战第27天】ES6 中,`let` 和 `const` 是新增的变量声明关键字,与 `var` 存在显著差异。`let` 允许重新赋值,而 `const` 不可,且两者都具有块级作用域。`var` 拥有函数级作用域,并可在函数内任意位置访问。`let` 和 `const` 声明时必须初始化,而 `var` 不需。根据需求选择使用:局部作用域用 `let`/`const`,全局或函数范围用 `var`,不可变值用 `const`。
21 2
|
13天前
|
JSON JavaScript 前端开发
vue2_vite.config.js的proxy跨域配置和nginx配置代理有啥区别?
vue2_vite.config.js的proxy跨域配置和nginx配置代理有啥区别?
29 1
|
13天前
|
JavaScript 前端开发 Oracle
java和JavaScript的区别
java和JavaScript的区别
11 3
|
15天前
|
JavaScript 前端开发
js开发:请解释同步和异步编程的区别。
同步编程按顺序执行,易阻塞;异步编程不阻塞,提高效率。同步适合简单操作,异步适合并发场景。示例展示了JavaScript中同步和异步函数的使用。
20 0
|
16天前
|
存储 缓存 前端开发
< 今日份知识点:Javascript本地存储的方式有哪些?区别及应用场景? >
在前端开发中,偶尔需要存储一些如: 用户信息、登录状态、历史记录等常量数据。用于后续二次调用,并且避免刷新后丢失。这时,就需要用到本地存储了。 在`JavaScript` 中,提供了四种可用的本地存储方式: **`cookie`** ,**`sessionStorage`**, **`localStorage`**, **`indexedDB`** ( 已废除的 `WebSQL` )。四种方式各有千秋,接下来,就由小温带各位卷王了解一下,`Javascript` 中的本地存储吧
< 今日份知识点:Javascript本地存储的方式有哪些?区别及应用场景? >
|
19天前
|
JavaScript
js浅拷贝与深拷贝的区别?
js浅拷贝与深拷贝的区别?