在JavaScript中,这是一种将值转换为Boolean
类型的更有效方法,
let booleanVal = !!valueToCast;
或
let booleanVal = Boolean(valueToCast);
PS 在某些用例中我需要在api中的1000个元素的数组中进行类型转换,所以我想知道哪个具有最小的开销
答案 0 :(得分:1)
已经有一个jsperf可以衡量https://jsperf.com/bool-cast-vs-not两者之间的差异,这表明在大多数浏览器Boolean(value)
明显慢于!!value
(但现在在较新的Chrome 59+中)它稍快一点。)
然而,即使在最慢的情况下,它仍然超过30,000,000次操作,这使得它对你的1000个元素数据集来说非常微不足道。
所以选择你喜欢的那个:)