表示されているページは、編集用 バージョンの MDN Web Docsです

MDN Web Docs のユーザーとして表示: https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/Less_than

小なり演算子 (<) は、左辺のオペランドが右辺のオペランドより小さい場合は true を返し、それ以外の場合は false を返します。

構文

 x < y

説明

オペランドは、以下に大まかに要約されている抽象関係比較アルゴリズムを使用して比較されます:

  • 最初に、オブジェクトは Symbol.ToPrimitive を使用してプリミティブに変換されます。
  • 両方の値が文字列である場合、それらに含まれる Unicode コードポイントの値に基づいて、文字列として比較されます。
  • それ以外の場合、 JavaScript は非数値型を数値に変換しようとします:
    • ブール値 true および false は、それぞれ 1 および 0 に変換されます。
    • null は 0 に変換されます。
    • undefined は NaN に変換されます。
    • 文字列は、含まれている値に基づいて変換され、数値が含まれていない場合は NaN として変換されます。
  • いずれかの値が NaN の場合、演算子は false を返します。
  • それ以外の場合、値は数値として比較されます。

文字列と文字列の比較

console.log("a" < "b");        // true
console.log("a" < "a");        // false
console.log("a" < "3");        // false

文字列と数値の比較

console.log("5" < 3);          // false
console.log("3" < 3);          // false
console.log("3" < 5);          // true

console.log("hello" < 5);      // false
console.log(5 < "hello");      // false

console.log("5" < 3n);         // false
console.log("3" < 5n);         // true

数値と数値の比較

console.log(5 < 3);            // false
console.log(3 < 3);            // false
console.log(3 < 5);            // true

数値と BigInt の比較

console.log(5n < 3);           // false
console.log(3 < 5n);           // true

ブール値, null, undefined, NaN の比較

console.log(true < false);     // false
console.log(false < true);     // true

console.log(0 < true);         // true
console.log(true < 1);         // false

console.log(null < 0);         // false
console.log(null < 1);         // true

console.log(undefined < 3);    // false
console.log(3 < undefined);    // false

console.log(3 < NaN);          // false
console.log(NaN < 3);          // false

仕様

仕様
ECMAScript (ECMA-262)
Relational operators の定義

ブラウザー実装状況

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung InternetNode.js
Less than (a < b)Chrome 完全対応 1Edge 完全対応 12Firefox 完全対応 1IE 完全対応 3Opera 完全対応 3Safari 完全対応 1WebView Android 完全対応 1Chrome Android 完全対応 18Firefox Android 完全対応 4Opera Android 完全対応 10.1Safari iOS 完全対応 1Samsung Internet Android 完全対応 1.0nodejs 完全対応 0.1.100

凡例

完全対応  
完全対応

関連項目

ドキュメントのタグと貢献者

このページの貢献者: mpcjazz, eltociear
最終更新者: mpcjazz,