Less than or equal (<=)
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Der Less than or equal (<=
) Operator gibt true
zurück, wenn der linke Operand kleiner oder gleich dem rechten Operand ist, und false
andernfalls.
Probieren Sie es aus
Syntax
x <= y
Beschreibung
Die Operanden werden mit demselben Algorithmus verglichen wie beim Less than Operator, wobei die Operanden vertauscht und das Ergebnis negiert werden. x <= y
ist in der Regel äquivalent zu !(y < x)
, außer in zwei Fällen, in denen x <= y
und x > y
beide false
sind:
- Wenn einer der Operanden in einen BigInt konvertiert wird, während der andere in einen String konvertiert wird, der nicht in einen BigInt-Wert umgewandelt werden kann (es wird ein Syntaxfehler ausgelöst, wenn er an
BigInt()
übergeben wird). - Wenn einer der Operanden in
NaN
konvertiert wird. (Zum Beispiel Strings, die nicht in Zahlen konvertiert werden können, oderundefined
.)
Außerdem zwingt x <= y
x
dazu, vor y
in ein primitives Datum umgewandelt zu werden, während y < x
y
dazu zwingt, vor x
in ein primitives Datum umgewandelt zu werden. Da die Umwandlung Nebenwirkungen haben kann, könnte die Reihenfolge der Operanden von Bedeutung sein.
x <= y
ist im Allgemeinen äquivalent zu x < y || x == y
, abgesehen von einigen wenigen Fällen:
- Wenn eines von
x
odery
null
ist und das andere etwas ist, das nichtnull
ist und zu 0 wird, wenn es numerisch erzwungen wird (einschließlich0
,0n
,false
,""
,"0"
,new Date(0)
, etc.):x <= y
isttrue
, währendx < y || x == y
false
ist. - Wenn eines von
x
odery
undefined
ist und das andere eines vonnull
oderundefined
ist:x <= y
istfalse
, währendx == y
true
ist. - Wenn
x
undy
dasselbe Objekt sind, das nach dem ersten Schritt von Less than zuNaN
wird (wienew Date(NaN)
):x <= y
istfalse
, währendx == y
true
ist. - Wenn
x
undy
verschiedene Objekte sind, die nach dem ersten Schritt von Less than denselben Wert werden:x <= y
isttrue
, währendx < y || x == y
false
ist.
Beispiele
Vergleich von String zu String
"a" <= "b"; // true
"a" <= "a"; // true
"a" <= "3"; // false
Vergleich von String zu Zahl
"5" <= 3; // false
"3" <= 3; // true
"3" <= 5; // true
"hello" <= 5; // false
5 <= "hello"; // false
Vergleich von Zahl zu Zahl
5 <= 3; // false
3 <= 3; // true
3 <= 5; // true
Vergleich von Zahl zu BigInt
5n <= 3; // false
3 <= 3n; // true
3 <= 5n; // true
Vergleich von Boolean, null, undefined, NaN
true <= false; // false
true <= true; // true
false <= true; // true
true <= 0; // false
true <= 1; // true
null <= 0; // true
1 <= null; // false
undefined <= 3; // false
3 <= undefined; // false
3 <= NaN; // false
NaN <= 3; // false
Spezifikationen
Specification |
---|
ECMAScript Language Specification # sec-relational-operators |
Browser-Kompatibilität
BCD tables only load in the browser