Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Inférieur strict (<)
Baseline Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
L'opérateur inférieur strict (<) renvoietrue si son opérande gauche est strictement inférieur à son opérande droit etfalse sinon.
Dans cet article
Exemple interactif
console.log(5 < 3);// Expected output: falseconsole.log(3 < 3);// Expected output: false// Compare bigint to numberconsole.log(3n < 5);// Expected output: trueconsole.log("aa" < "ab");// Expected output: trueSyntaxe
x < y;Description
Les opérandes sont comparés avec l'algorithme decomparaison abstraite relationnelle résumé comme suit :
Tout d'abord, les objets sont convertis en valeurs primitives avec
Symbol.ToPrimitiveen utilisant le paramètrehintavec la valeur'number'.Si les deux valeurs sont des chaînes de caractères, elles sont comparées comme telles selon les valeurs des codes Unicode qu'elles contiennent.
Sinon, le moteur JavaScript tente de convertir les valeurs primitives non-numériques en valeurs numériques :
- Les valeurs booléennes
trueetfalsesont respectivement converties en 1 et 0. nullest converti en 0.undefinedest converti enNaN.- Les chaînes de caractères sont converties en fonction de la valeur qu'elles contiennent et, si elles ne contiennent pas de valeurs numériques, elles sont converties en
NaN.
- Les valeurs booléennes
Si l'une des valeurs vaut
NaN, l'opérateur renverrafalse.Sinon, les valeurs sont comparées numériquement.
Exemples
>Comparaison numérique
console.log(5 < 3); // falseconsole.log(3 < 3); // falseconsole.log(3 < 5); // trueComparaison entre un nombre et un BigInt
console.log(5n < 3); // falseconsole.log(3 < 5n); // trueComparaison entre chaînes de caractères
console.log("a" < "b"); // trueconsole.log("a" < "a"); // falseconsole.log("a" < "3"); // falseComparaison entre nombres et chaînes de caractères
console.log("5" < 3); // falseconsole.log("3" < 3); // falseconsole.log("3" < 5); // trueconsole.log("coucou" < 5); // falseconsole.log(5 < "coucou"); // falseconsole.log("5" < 3n); // falseconsole.log("3" < 5n); // trueComparaison avec des booléens, null, undefined, NaN
console.log(true < false); // falseconsole.log(false < true); // trueconsole.log(0 < true); // trueconsole.log(true < 1); // falseconsole.log(null < 0); // falseconsole.log(null < 1); // trueconsole.log(undefined < 3); // falseconsole.log(3 < undefined); // falseconsole.log(3 < NaN); // falseconsole.log(NaN < 3); // falseSpécifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-relational-operators> |