1 2 3 |
|
Object.is方法
Object.is
是ES6中新增的方法,与===
非常类似,同样用作比较两个值是否相等。
1 2 3 |
|
不同的是在判断+0
和-0
、NaN
和NaN
时的区别。
1 2 3 4 5 |
|
在处理兼容性问题时,polyfill可以这么写。
1 2 3 4 5 6 7 8 9 10 11 |
|
JSON.stringify
JSON.stringify
方法用于把对象或者数组转换为一个 JSON字符串,得出的字符串便可以用作对象的比较。
1 2 3 4 5 |
|
JSON.stringify
弥补了===
无法准确比较对象的局限,不过它也有一定的局限性,在遇到undefined
、function
以及symbol
值时会忽略。
另外,值得一提的是利用JSON.parse
、JSON.stringify
可实现对象深拷贝,局限性同上。
何时使用它们
不一样的场景可能有不一样的需求,如果只比较基本数据类型,那么===
就足够了,如果想“一劳永逸
”,那么付出一定的成本使用自定义方法无疑是有必要的。
在日常反复的开发中,还是要多多探索吧。
更多编程相关知识,请访问:编程视频!!
以上就是javascript怎么判断变量是否相等的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
5种javascript中解构(destructuring)的使用方法
更多相关阅读请进入《javascript》频道 >>
Vue.js 设计与实现 基于Vue.js 3 深入解析Vue.js 设计细节
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者