ホームページ > 記事 > ウェブフロントエンド > JavaScript で文字列プリミティブにプロパティを追加できないのはなぜですか?
文字列プリミティブへのプロパティの追加が失敗する理由
JavaScript では、以下のコードのように、文字列プリミティブにプロパティを追加しようとします。
<code class="javascript">var test = "test"; test.test = "test inner"; console.log(test.test); // Output: undefined</code>
JavaScript の型
この問題を理解するには、JavaScript の型の概念を理解する必要があります。 JavaScript には 8 つの型があります:
プリミティブ値 (文字列など) はプロパティを所有できませんが、オブジェクトはプロパティを所有できます。
プロパティの割り当て
プロパティを変数に割り当てる場合、次のようになります。 as:
<code class="javascript">foo.bar = 'abc';</code>
結果は foo の値によって異なります:
日付の並べ替えのソリューション
あなたの特定のケースでは、日付は文字列として保存されるため、日付を並べ替えるための 1 つの回避策は、日付が常に同じ形式で保存されることを前提とした並べ替えアルゴリズムでカスタム比較関数を使用することです。このカスタム関数は、日付文字列の形式に基づいて日付を認識した比較を実行できます。
以上がJavaScript で文字列プリミティブにプロパティを追加できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。