当值为0时,jQuery Knob显示NaN

这真的很奇怪。

$(function(){ $('.dial').knob({ return value + '%'; }); }); 

这是我的原始代码,以显示百分号,这很好。 由于某种原因,当值为0时,在页面加载时它显示为NaN 。 奇怪的是,只有在突出显示文本然后单击“关闭”才会显示实际值0(替换NaN值)。 知道导致这种情况发生的原因吗? 我试图在格式钩子中处理它:

 $(function(){ $('.dial').knob({ 'format': function( value ){ if(value == undefined || value == NaN { value = 0; return value + '%'; } else{ return value + '%'; } } }); }); 

它仍然无法正常工作。 我控制台记录了我传入的值,确定它是0.我认为它可能是’x之前加载’,因此它将值视为未定义,因为我传递的值属性为angularJS数据绑定。 但我试图处理它无济于事。 有什么想法吗?

value == NaN不起作用,因为令人惊讶的是,在javascript中NaN不等于NaN 。 尝试isNaN()代替。