"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > ## Que fait l'opérateur Double Tilde (~~) en JavaScript ?

## Que fait l'opérateur Double Tilde (~~) en JavaScript ?

Publié le 2024-11-17
Parcourir:487

## What Does the Double Tilde Operator (~~) Do in JavaScript?

Opérateur double Tilde en JavaScript (~~)

En JavaScript, l'opérateur ~~ est un opérateur de coercition de type qui supprime tout après le point décimal d'un nombre. Cela diffère de l'opérateur ~, qui est un opérateur NOT au niveau du bit qui inverse les bits d'une valeur.

Opération

L'opérateur fonctionne en convertissant d'abord son opérande à un entier signé de 32 bits. Cela signifie que même si l’opérande est un nombre à virgule flottante ou une chaîne, il sera traité comme un entier en interne. L'opérateur effectue effectivement les opérations suivantes :

  • Si l'opérande est négatif, il arrondit à l'entier supérieur (Math.ceil).
  • Si l'opérande est positif, il arrondit au nombre entier inférieur (Math.floor).

Utilité

Pendant que l'opérateur ~~ peut sembler être un simple remplacement de Math.floor ou Math.ceil, il présente certaines limitations :

  • Il peut entraîner un débordement si l'opérande est en dehors de la plage de -(2^ 31) à 2^31 - 1.
  • Il ne convient pas aux opérandes non entiers, car il ignore la partie décimale.

Par conséquent, il est généralement recommandé d'utiliser x (plus unaire) ou Number(x) pour la coercition de type, et Math.floor ou Math.ceil pour l'arrondi.

Exemple

Considérons le nombre -43,2 :

  • ~~(-43,2) = -43
  • Math.floor(-43.2) = -44

Comme vous pouvez le voir, ~~ arrondit vers zéro tandis que Math.floor arrondit à l'inférieur. Ce comportement peut être utile dans certains scénarios, comme par exemple tronquer un nombre sans utiliser de point décimal.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3