神奇的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
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 布丽吉特,人生绝对的赢家
- 慢慢的美丽
- 尽力
- 一个小故事,我的思考。
- 家乡的那条小河
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量