ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript オブジェクト配列内の文字列を正しく並べ替える方法

JavaScript オブジェクト配列内の文字列を正しく並べ替える方法

Patricia Arquette
リリース: 2024-11-25 12:35:12
オリジナル
853 人が閲覧しました

How to Correctly Sort Strings in JavaScript Object Arrays?

JavaScript 文字列の並べ替え

JavaScript では、文字列の並べ替えはその特性により少し難しい場合があります。よくある課題の 1 つは、sort() メソッドを使用して文字列属性に基づいてオブジェクトを並べ替えることです。

問題:

list.sort(function ( a, b) { return a.attr - b.attr }) 文字列に対して失敗することが多い

解決策:

JavaScript で文字列を並べ替えるには、sort 関数内で String.prototype.localeCompare を使用します。

list.sort(function (a, b) {
    return ('' + a.attr).localeCompare(b.attr);
});
ログイン後にコピー

変換することで、 a.attr を文字列に明示的に指定すると、例外が回避されます。 localeCompare はロケールを意識した比較をサポートしており、ブラウザ間で広くサポートされています。

代替アプローチ:

代替方法は、次のコード スニペットを使用することです:

if (item1.attr < item2.attr)
  return -1;
if ( item1.attr > item2.attr)
  return 1;
return 0;
ログイン後にコピー

ただし、このアプローチはロケールを尊重しないため、異なる環境では一貫性のない結果が生じる可能性があります。環境

以上がJavaScript オブジェクト配列内の文字列を正しく並べ替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート