Documentación offline JavaScript main

Less than or equal (<=)

main Documentación oficial Licencia CC-BY-SA-2.5Descargado el 2026-08-02

En esta página

The less than or equal (<=) operator returns true if the left operand is less than or equal to the right operand, and false otherwise.

{{InteractiveExample("JavaScript Demo: Less than or equal (<=) operator")}}

```js interactive-example console.log(5 <= 3); // Expected output: false

console.log(3 <= 3); // Expected output: true

// Compare bigint to number console.log(3n <= 5); // Expected output: true

console.log("aa" <= "ab"); // Expected output: true

## Syntax

```js-nolint
x <= y

Description#

The operands are compared using the same algorithm as the Less than operator, with the operands swapped and the result negated. x <= y is generally equivalent to !(y < x), except for two cases where x <= y and x > y are both false:

  • If one of the operands gets converted to a BigInt, while the other gets converted to a string that cannot be converted to a BigInt value (it throws a syntax error when passed to BigInt()).
  • If one of the operands gets converted to NaN. (For example, strings that cannot be converted to numbers, or undefined.)

In addition, x <= y coerces x to a primitive before y, while y < x coerces y to a primitive before x. Because coercion may have side effects, the order of the operands may matter.

x <= y is generally equivalent to x < y || x == y, except for a few cases:

  • When one of x or y is null, and the other is something that's not null and becomes 0 when coerced to numeric (including 0, 0n, false, "", "0", new Date(0), etc.): x <= y is true, while x < y || x == y is false.
  • When one of x or y is undefined, and the other is one of null or undefined: x <= y is false, while x == y is true.
  • When x and y are the same object that becomes NaN after the first step of Less than (such as new Date(NaN)): x <= y is false, while x == y is true.
  • When x and y are different objects that become the same value after the first step of Less than: x <= y is true, while x < y || x == y is false.

Examples#

String to string comparison#

"a" <= "b"; // true
"a" <= "a"; // true
"a" <= "3"; // false

String to number comparison#

"5" <= 3; // false
"3" <= 3; // true
"3" <= 5; // true

"hello" <= 5; // false
5 <= "hello"; // false

Number to Number comparison#

5 <= 3; // false
3 <= 3; // true
3 <= 5; // true

Number to BigInt comparison#

5n <= 3; // false
3 <= 3n; // true
3 <= 5n; // true

Comparing 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

Specifications#

{{Specifications}}

Browser compatibility#

{{Compat}}

See also#