A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/toSorted below:

Array.prototype.toSorted() - JavaScript | MDN

Array.prototype.toSorted()

Baseline 2023

Newly available

toSorted() は Array インスタンスのメソッドで、 sort() メソッドに対応するコピーメソッドです。これは、要素を昇順にソートした新しい配列を返します。

構文
toSorted()
toSorted(compareFn)
引数
compareFn 省略可

ソート順を定義する関数を指定します。省略した場合は、配列の要素を文字列に変換し、 Unicode コードポイントの値に従って並べ替えます。

a

比較する最初の要素です。

b

比較する 2 番目の要素です。

返値

要素を昇順にソートした新しい配列です。

解説

compareFn 引数の情報については sort() を参照してください。

疎配列が使用された場合、 toSorted() メソッドは空のスロットを undefined という値があるものとして反復処理します。

toSorted() メソッドは汎用です。 this の値が length プロパティを持っており、整数のキーのプロパティがあることのみを期待します。

例 配列のソート
const months = ["Mar", "Jan", "Feb", "Dec"];
const sortedMonths = months.toSorted();
console.log(sortedMonths); // ['Dec', 'Feb', 'Jan', 'Mar']
console.log(months); // ['Mar', 'Jan', 'Feb', 'Dec']

const values = [1, 10, 21, 2];
const sortedValues = values.toSorted((a, b) => a - b);
console.log(sortedValues); // [1, 2, 10, 21]
console.log(values); // [1, 10, 21, 2]

他の利用例は、 sort() を参照してください。

疎配列における toSorted() の使用

空のスロットは値が undefined であるかのようにソートされます。これらは常に配列の末尾にソートされ、 compareFn は呼び出されません。

console.log(["a", "c", , "b"].toSorted()); // ['a', 'b', 'c', undefined]
console.log([, undefined, "a", "b"].toSorted()); // ["a", "b", undefined, undefined]
配列以外のオブジェクトに対する toSorted() の呼び出し

toSorted() メソッドは this の length プロパティを読み取ります。そして、length - 1 から 0 までの整数のキーを持つ各プロパティを降順に訪れ、現在のプロパティの値を配列の末尾に追加して返します。

const arrayLike = {
  length: 3,
  unrelated: "foo",
  0: 5,
  2: 4,
  3: 3, // length が 3 なので toSorted() からは無視される
};
console.log(Array.prototype.toSorted.call(arrayLike));
// [4, 5, undefined]
仕様書 ブラウザーの互換性 関連情報

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4