2

クロスブラウザー分割をコードに入れ、jsHint を介して実行し、次Unexpected use of '>>>'の行を取得しました。

limit = limit === undef ?
    -1 >>> 0 : // Math.pow(2, 32) - 1
    limit >>> 0; // ToUint32(limit)

1行にまとめて式を括弧に入れた場合も同じです

これはエラーですか?どうすれば修正できますか?

4

1 に答える 1

4

「ビット単位の演算子が使用されている場合」オプションをオフにすることで、エラーを無効にすることができます (まあ、実際には警告と呼ぶ必要があります )に); その場合、上記のコードはエラーを生成しません。

元のJSLintツールのビット演算子の使用について警告する理由は次のとおりです (JSHint は、純粋にスタイルである「エラー」をオフにするオプションが追加された JSLint のより使いやすいバージョンです)。

ビット演算子

JavaScript には整数型はありませんが、ビット単位の演算子はあります。ビット単位の演算子は、オペランドを浮動小数点から整数に、またはその逆に変換するため、C やその他の言語ほど効率的ではありません。ブラウザ アプリケーションではめったに役に立ちません。論理演算子との類似性により、一部のプログラミング エラーを隠すことができます。このbitwiseオプションでは、次の演算子を使用できます: << >> >>> ~ & |.

于 2012-06-24T11:23:15.790 に答える