{ } + [ ] = 0,打开浏览器控制台,直接输入{ } + [ ],会显示0,如下
因为➕号从右解析到左解析,[].valueOf().toString()=‘‘ ’’=false=0,而{}会被视为空的代码块,不执行,所以结果为0,
如果是 [ ] + { } 则会是"[object Object]"
但是在vscode里输入console.log( { } + [ ] )就不是0,因为{ }这里没有当成空代码块
四则运算符:
当只有加法运算的时候,其中一方是字符串类型,就会把另一个也转为字符串类型,其他运算只要其中一方是数字,那么另一方就转为数字,并且加法运算会触发三种类型转换:将值转换为原始值;转换为数字;转换为字符串