为什么要返回!! var JavaScript?

时间:2013-02-26 12:10:47

标签: javascript jquery sizzle

在看了Sizzle.js后,我注意到他们有一个断言函数(见下文),它返回!!fn(x)

为什么有人这样做?这样做似乎毫无意义,因为它只是"not not"

function assert( fn ) {
  var div = document.createElement("div");

  try {
    return !!fn( div );
  } catch (e) {
    return false;
  } finally {
    // release memory in IE
    div = null;
  }
}

有人对此有所了解吗?

1 个答案:

答案 0 :(得分:3)

它确保返回类型是布尔值而不是其他任何内容。