【发布时间】:2013-09-05 14:42:04
【问题描述】:
我正在查看其他人编写的一些代码,我注意到这种奇怪的 javascript if 语法。基本上,它看起来像这样:
// This is understandable (but I dont know if it have relevance)
var re = new RegExp("^" + someVar + "_", "i");
// !!~ ??? What is this black magic?
if (!!~varA.search(re)) { ... }
这是很难用谷歌搜索的事情之一。有任何 Javascript 专家可以解释这一点吗?
【问题讨论】:
-
至于它是什么......这是一种毫无意义的语法,打字时会节省0个字符并降低易读性。
varA.search(re)>-1是“兄弟”吗 -
我不认为这是其他双感叹号问题的重复。
!!~与!!完全不同。我承认,!!~对我来说是新的。它是神秘的,我认为它值得提出自己的问题。我总是更喜欢更具表现力的方法:if(varA.search(re) >= 0)。
标签: javascript