JSLint不期待我的倾斜

时间:2012-02-27 22:59:32

标签: javascript operators jslint

JSLint坚持认为我在下面的示例中使用了某些exotic tilde operator是出乎意料的。我想知道这是否是JSLint的限制?还是严格模式?或者我还缺少什么?

(function () {
    'use strict';
    if (~'foo'.indexOf('bar')) {
        return 'wild accusations';
    }
}());

另外,为什么我不应该使用简单的代字号运算符而不是下面更复杂的示例?当然必须有充分的理由不去?

if ('foo'.indexOf('bar') >= 0) { … }

1 个答案:

答案 0 :(得分:6)

来自JSLint Docs

  

按位运算符

     

JavaScript没有整数类型,但它确实有按位运算符。按位运算符将其操作数从浮点转换为整数和返回,因此它们不如C或其他语言有效。它们在浏览器应用程序中很少有用。与逻辑运算符的相似性可以掩盖一些编程错误。按位选项允许使用这些运算符:<< >> >>> 〜& |

您可以在options

下启用它

干杯