比较时候的转换原则:
- 一个是number一个是string时,会尝试将string转换为number
- 尝试将boolean转换为number,0或1
- 尝试将Object转换成number或string,取决于另外一个对比量的类型
运算过程的转换代码
- 字符串与数字相加,变成字符串
- 字符串与数字相减,变成数字
如下例子,会将foo先变成string在变为number
var foo = "11"+2-"1";
console.log(foo);
console.log(typeof foo);//number
在比如:
++[[]][+[]]+[+[]] //10
为什么呢 参考:http://justjavac.com/javascript/2012/05/24/can-you-explain-why-10.html