神奇的Javascript

>typeofNaN <"number" //not a number,但它是number type的,NaN 的检测 isNaN。 >9999999999999999 <10000000000000000 //js整数精度15位 >0.5 + 0.1 == 0.6 0.1 + 0.2 == 0.3 Math.max() <-Infinity // max 是 Math 的静态方法,返回给定的一组数字中的最大值。 // 如果没有参数,结果为[`-bInfinity`] // 如果给定的参数中至少有一个参数无法被转换成数字,则会返回 [`NaN`] >Math.min() [] + [] <"" //+中空数组转为空字符串, //在-,*运算中[]被转化为0 >[] + {} <"[object object]">{} + [] <0>true + true + true === 3 true - true <0>true == 1 true === 1 >false>(!+[]+[]+![]).length <9 //我也看不懂,js是门玄学 >9+"1" <"91">91-"1" <90>[] == 0

在JavaScript中,加法的规则其实很简单,只有两种情况:你只能把数字和数字相加,或者字符串和字符串相加,所有其他类型的值都会被自动转换成这两种类型的值.
【神奇的Javascript】参考文章:https://segmentfault.com/a/1190000008038678
参考文章:https://github.com/jawil/blog/issues/1
原文链接:yinzhuo.online

    推荐阅读