JSLintは、以下の例の中で幾分exotic tilde operatorの私の使用が予期せぬことを主張しています。これがJSLintの限界であるかどうかは疑問です。または厳格なモード?何が他にないの?JSLintは私のティルドを期待していません
(function() {
'use strict';
if (~'foo'.indexOf('bar')) {
return 'wild accusations';
}
}());
さらに、以下の複雑な例ではなく、シンプルなティルド演算子を使用しないでください。確かにないことに正当な理由があるはずですか? JSLint Docsから
if ('foo'.indexOf('bar') >= 0) { … }
の下でそれを有効にすることができます。 – MrBoJangles
'ビット単位の演算子を許可する '('〜 'はビット単位の演算子です)を有効にする必要があります。それを使わない理由:私はそれが一般的に使用されているとは思わないし、理解するのが難しいですが(それは私だけかもしれない)。演算子自体の理解だけでなく、数値表現*も理解する必要があるだけで、 '-1 'はすべてのビットが' 1 'に設定されて表現される(したがって、補数は' 0' - '' false') 。 –
〜はビット単位ではないので、JS 0-> TRUE!0-> FALSE、〜〜> 0 ... clever –