Maison > interface Web > js tutoriel > Le revêtement de sol flotte avec Bitwise OR : plus rapide que Math.floor() ?

Le revêtement de sol flotte avec Bitwise OR : plus rapide que Math.floor() ?

Patricia Arquette
Libérer: 2024-11-20 13:57:15
original
858 Les gens l'ont consulté

Flooring Floats with Bitwise OR: Faster Than Math.floor()?

Nombres flottants au sol avec OU au niveau du bit 0

Une méthode unique a fait surface pour les nombres flottants au sol à l'aide d'un opérateur OU au niveau du bit :

var a = 13.6 | 0; // a == 13
Copier après la connexion

Plongeons dans cette technique, explorons ses mécanismes et comparons-la à la fonction standard Math.floor.

Comment ça marche ?

Les opérations au niveau des bits fonctionnent sur des entiers signés de 32 bits. Par conséquent, l'application d'un OU au niveau du bit à un nombre flottant le convertit efficacement en un nombre entier, tronquant ainsi la partie fractionnaire.

Avantages par rapport à Math.floor ?

Les résultats de l'analyse comparative suggèrent que cette méthode peut être légèrement plus rapide que Math.floor.

Inconvénients :

  • Peut ne pas réussir les contrôles de peluchage JavaScript
  • Limité à 32- entiers signés par bits
  • Le comportement comparatif diffère de Math.floor :

    • Math.floor(NaN) === NaN
    • (NaN | 0) === 0

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal