Maison > interface Web > js tutoriel > Comment les zéros non significatifs dans les nombres JavaScript sont-ils interprétés ?

Comment les zéros non significatifs dans les nombres JavaScript sont-ils interprétés ?

DDD
Libérer: 2024-11-22 12:17:14
original
782 Les gens l'ont consulté

How are Leading Zeros in JavaScript Numbers Interpreted?

Les nombres avec des zéros non significatifs en JavaScript

Les nombres avec des zéros non significatifs en JavaScript sont interprétés différemment selon leur format.

Évolution historique

Au début, les zéros non significatifs représentaient l'octal (base 8) en JavaScript, similaire au 0x non significatif pour l'hexadécimal (base 16).

10, 012, 0xA // 均表示十进制数 10
Copier après la connexion

Dans ECMAScript 3, cependant, cette représentation octale a été rétrogradée au rang d'extension facultative, et les littéraux entiers décimaux ne peuvent plus avoir de zéros non significatifs (sauf si l'implémentation prend en charge l'extension).

Mode strict dans ES5 et versions ultérieures

En mode strict dans ES5, les littéraux décimaux avec des zéros non significatifs ne sont plus autorisés :

0 // 无效
NonZeroDigit DecimalDigits(opt) // 有效
Copier après la connexion

ES6 Nouvelles représentations introduites

ES6 introduit des littéraux binaires et octaux, avec les symboles principaux 0b et 0o :

  • Littéral binaire : 0b11110010
  • Littéral octal : 0o764

Littéral octal traditionnel

Bien que n'est plus recommandé, avec Les représentations octales avec des zéros non significatifs (c'est-à-dire les littéraux octaux traditionnels) peuvent toujours être utilisées en mode non strict :

010 // 可能会被解释为 8 或 10,具体取决于实现
Copier après la connexion

Bonnes pratiques

Pour garantir que les nombres sont toujours Interprété comme décimal, il est recommandé de supprimer les zéros non significatifs ou d'utiliser parseInt analyse les nombres :

parseInt('010', 8) // 返回 8
parseInt('010', 10) // 返回 10
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal