最近做react的app使用了moment库,遇到如下问题:
console.warn('测试moment(null):', moment(null))
console.warn('测试typeof moment(null):', typeof moment(null))
console.warn('测试Boolean(moment(null)):', Boolean(moment(null)))
console.warn('测试!moment(null):', !moment(null))
结果直接上图如下:
先看第一行打印和对应结果,没问题很正常
看第二行,我使用typeof打印其类型为 object对象,很对嘛,返回null对象
但看第三行,相当于Boolean(null),结果却是true!!!
这个null并不是正常的null对象!!!
这是chrome控制台打印的
所以后续的第四行,将moment(null)的结果进行取反,进行判断时遇到了诸多的问题,最终找到这里…
查看官方文档:
然后就没有然后了,只告诉我们返回布尔值…但我打印出来是null啊!是一个特殊的null!!!!
采坑。