ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript 数値の先頭のゼロはどのように解釈されますか?

JavaScript 数値の先頭のゼロはどのように解釈されますか?

DDD
リリース: 2024-11-22 12:17:14
オリジナル
775 人が閲覧しました

How are Leading Zeros in JavaScript Numbers Interpreted?

JavaScript で先頭にゼロがある数値

JavaScript で先頭にゼロがある数値は、その形式に応じて解釈が異なります。

歴史的進化

初期の頃、JavaScript では先頭のゼロは 8 進数 (基数 8) を表し、16 進数 (基数 16) の先頭の 0x と同様でした。

10, 012, 0xA // 均表示十进制数 10
ログイン後にコピー

ただし、ECMAScript 3 では、この 8 進数表現はオプションの拡張子に降格され、10 進整数リテラルには先頭にゼロを付けることができなくなりました (実装が拡張子をサポートしない限り)。

ES5 以降の厳密モード

ES5 の厳密モードでは、先頭にゼロが付いた 10 進リテラルは使用できなくなりました:

0 // 无效
NonZeroDigit DecimalDigits(opt) // 有效
ログイン後にコピー

ES6新しい表現の導入

ES6 では、先頭記号 0b と 8 進リテラルが導入されています。 0o:

  • バイナリ リテラル: 0b11110010
  • 8 進リテラル: 0o764

従来の 8 進リテラル

推奨されなくなりました。先行ゼロのある 8 進数表現 (つまり、従来の 8 進数リテラル) は、非厳密モードでも引き続き使用できます:

010 // 可能会被解释为 8 或 10,具体取决于实现
ログイン後にコピー

ベスト プラクティス

10 進数として解釈されるため、先頭のゼロを削除するか、次の値を使用することをお勧めします。 parseInt は数値を解析します:

parseInt('010', 8) // 返回 8
parseInt('010', 10) // 返回 10
ログイン後にコピー

以上がJavaScript 数値の先頭のゼロはどのように解釈されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート