【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
相关推荐
HUGu RGIN1 分钟前
Django视图与URLs路由详解
java
每天吃饭的羊6 分钟前
水平,垂直居中
前端·javascript·html
京师20万禁军教头16 分钟前
29面向对象(中级)-继承
java
disgare23 分钟前
SpringBoot 请求调用时关于高可用机制选型和落地
java·spring boot·后端
鼎道开发者联盟28 分钟前
鼎享会 | OpenClaw Control UI 前端架构全解析:自研 UI 对接 Server 实操指南
前端·ui·架构·openclaw·control ui
CodeMartain30 分钟前
@SpringBootApplication 到底是什么呢?
java·spring boot·intellij-idea
尘世中一位迷途小书童30 分钟前
一套完整的给予ceium封装的组件库,可满足企业级开发
前端
Z_Wonderful31 分钟前
微前端:Webpack 配置 vs Vite 配置 超清晰对比
前端·webpack·node.js
thankseveryday33 分钟前
Three.js 把 Blender 绘制的曲线(Bezier / 曲线) 导入 Three.js 并作为运动路径 / 动画路径使用
开发语言·javascript·blender
星秀日34 分钟前
大学生开发社区项目-CLXHXH-登录功能
java