JS中 为什么很多要用两个!! 来判断

比如 if(!!last)

这个就表示 if(last || false)。将判断的类型,强转成boolean类型。

如果last是null(或者undefine)的话,!last,返回的就是true 。

加了两个叹号后,明确的设置了变量的值,返回的boolean就是根据变量的实际值返回的。(如果是实际值 !!6,根据实际值6它是true,那么最后返回的是true)

所以两个叹号主要是处理null/undifined/0/""等值。

原文地址:https://www.cnblogs.com/Jeely/p/11276562.html