为什么' false'没印?

时间:2014-04-25 15:50:18

标签: jquery coffeescript jsfiddle

我正在关注coffeescript cookbook

中的示例

我正在玩这个例子: http://jsfiddle.net/andilab/N8DP3/2/

normal_false = 1<2<2 #false -> is NOT printed

normal_true  = 1<2<3 #true -> is printed

想知道为什么在与JSON.stringify一起使用之前不打印false,是coffescript还是JSFiddle或jQuery的问题?

1 个答案:

答案 0 :(得分:1)

这是由于使用了jQuery的append函数。

追加调用各种内容,并在某些时候调用buildFragment将提供的参数转换为要添加的HTML片段。

在此功能中如下:

if ( elem || elem === 0 ) {
    ... //Most of the code that generates stuff
}

在这种情况下,elem将为false,因此它会跳过它。

我认为这一行被定义为捕获传入的“未定义”内容,并且恰好也会捕获错误。除此之外,我不能说为什么代码是这样的,而是它的那一行代码。

参考:http://code.jquery.com/jquery-2.1.0.js