【JavaScript】 =,==,===区别

=:赋值运算符。

==:相等运算符,当等号两边值类型不同时,先转换为同一类型后,再比较值是否相等。

===:严格运算符,不做类型转换,类型不同一定为false。
一般用来比较是否相等用===。

js 复制代码
//==做类型转换后判断
console.log("1" == true)//true
console.log(1 == true)//true

//===不做类型转换,类型不同则直接false
console.log(1 === true)//false
console.log("1" === "1")//true

//比较object, Array, Function时,比较他们是否指向同一个对象
let arr1 = [1,2,3]
let arr2 = arr1
console.log(arr1 === arr2)

//null和undefined
console.log(null == undefined)//true
console.log(null === undefined)//false
console.log(null === null)//true
console.log(undefined === undefined)//true
相关推荐
精神状态良好17 小时前
RAG 是什么?如何让大模型基于文档作答
前端
CRAB17 小时前
解锁移动端H5调试:Eruda & VConsole 实战指南
前端·debug·webview
OpenTiny社区17 小时前
Vue2/Vue3 迁移头秃?Renderless 架构让组件 “无缝穿梭”
前端·javascript·vue.js
敲代码的独角兽17 小时前
深入理解 JavaScript 异步机制:从回调到 Promise 再到 async/await
前端
鱼鱼块17 小时前
二叉搜索树:让数据在有序中生长的智慧之树
javascript·数据结构·面试
敲代码的独角兽17 小时前
当 Web Worker 遇上异步,如何突破单线程限制?
javascript
清风乐鸣17 小时前
刨根问底栏目组 - 学习 Zustand 的广播哲学
前端
一生躺平的仔17 小时前
Nestjs 风云录:前端少侠的破局之道
javascript
悟能不能悟17 小时前
java map判断是否有key,get(key)+x,否则put(key,x)的新写法
java·开发语言
yxorg17 小时前
vue自动打包工程为压缩包
前端·javascript·vue.js