JS中的==运算: [''] == false —>true


Posted in Javascript onJuly 24, 2016

JS中的==运算: [''] == false —>true

计算下面表达式的值:

[''] == false

首先,两个操作数分别是对象类型、布尔类型。根据图1,需要将布尔类型转为数字类型,而false转为数字的结果是0,所以表达式变为:

[''] == 0

两个操作数变成了对象类型、数字类型。根据图1,需要将对象类型转为原始类型:

首先调用[].valueOf(),由于数组的valueOf()方法返回自身,所以结果不是原始类型,继续调用[].toString()。

对于数组来说,toString()方法的算法,是将每个元素都转为字符串类型,然后用逗号','依次连接起来,所以最终结果是空字符串'',它是一个原始类型的值。

此时,表达式变为:

'' == 0

两个操作数变成了字符串类型、数字类型。根据图1,需要将字符串类型转为数字类型,前面说了空字符串变成数字是0。于是表达式变为:

0 == 0

到此为止,两个操作数的类型终于相同了,结果明显是true。

Javascript 相关文章推荐
地址栏上的一段语句,改变页面的风格。(教程)
Apr 02 Javascript
jQuery+CSS 实现的超Sexy下拉菜单
Jan 17 Javascript
jQuery根据纬度经度查看地图处理程序
May 08 Javascript
利用js(jquery)操作Cookie的方法说明
Dec 19 Javascript
使用jquery制作弹出框效果
Apr 03 Javascript
jQuery层次选择器用法示例
Sep 09 Javascript
微信小程序 省市区选择器实例详解(附源码下载)
Jan 05 Javascript
Popup弹出框添加数据实现方法
Oct 27 Javascript
Vue路由守卫之路由独享守卫
Sep 25 Javascript
node.js Promise对象的使用方法实例分析
Dec 26 Javascript
Node.js 在本地生成日志文件的方法
Feb 07 Javascript
JavaScript中this函数使用实例解析
Feb 21 Javascript
JavaScript关于提高网站性能的几点建议(一)
Jul 24 #Javascript
JavaScript提高网站性能优化的建议(二)
Jul 24 #Javascript
JavaScript学习小结之使用canvas画“哆啦A梦”时钟
Jul 24 #Javascript
省市二级联动小案例讲解
Jul 24 #Javascript
基于jQuery实现多标签页切换的效果(web前端开发)
Jul 24 #Javascript
js简单实现调整网页字体大小的方法
Jul 23 #Javascript
jquery实现ajax加载超时提示的方法
Jul 23 #Javascript
You might like
PHP编码规范-php coding standard
2007/03/16 PHP
php删除数组元素示例分享
2014/02/17 PHP
Zend Framework框架路由机制代码分析
2016/03/22 PHP
JavaScript 开发规范要求(图文并茂)
2010/06/11 Javascript
各浏览器对click方法的支持差异小结
2011/07/31 Javascript
javascript笔记 String类replace函数的一些事
2011/09/22 Javascript
jquery ajax请求实例深入解析
2012/11/26 Javascript
window.open以post方式将内容提交到新窗口
2012/12/26 Javascript
深入领悟JavaScript中的面向对象
2013/11/18 Javascript
JS实现文字放大效果的方法
2015/03/03 Javascript
跟我学习javascript的arguments对象
2015/11/16 Javascript
JS控件bootstrap suggest plugin使用方法详解
2017/03/25 Javascript
JS利用cookies设置每隔24小时弹出框
2017/04/20 Javascript
基于js中的原型(全面讲解)
2017/09/19 Javascript
vue源码解析之事件机制原理
2018/04/21 Javascript
微信小程序textarea层级过高(盖住其他元素)问题的解决办法
2019/03/04 Javascript
Vue组件基础用法详解
2020/02/05 Javascript
[32:30]夜魇凡尔赛茶话会 第一期01:谁是卧底
2021/03/11 DOTA
python使用win32com在百度空间插入html元素示例
2014/02/20 Python
python通过ssh-powershell监控windows的方法
2015/06/02 Python
Python 读写文件和file对象的方法(推荐)
2016/09/12 Python
python中子类继承父类的__init__方法实例
2016/12/15 Python
使用Python AIML搭建聊天机器人的方法示例
2018/07/09 Python
从请求到响应过程中django都做了哪些处理
2018/08/01 Python
python爬虫获取百度首页内容教学
2018/12/23 Python
对Python 中矩阵或者数组相减的法则详解
2019/08/26 Python
Python序列化与反序列化pickle用法实例
2019/11/11 Python
Python中生成ndarray实例讲解
2021/02/22 Python
CSS3实现苹果手机解锁的字体闪亮效果示例
2021/01/05 HTML / CSS
HTML5 Canvas的性能提高技巧经验分享
2013/07/02 HTML / CSS
伦敦眼门票在线预订:London Eye
2018/05/31 全球购物
巴黎欧莱雅法国官网:L’Oreal Paris
2019/04/30 全球购物
项目经理聘任书
2014/03/29 职场文书
《桂花雨》教学反思
2016/02/19 职场文书
工程移交协议书
2016/03/24 职场文书
《原神》新角色演示“神里绫人:林隐泓洄” 宠妹狂魔
2022/04/03 其他游戏