プロパティディスクリプタです。私たちはこのように、新しいオブジェクトに追加のプロパティを提供することができます。説明したのと同じフォーマットです。本当の正確なコピーを作ります。同じことをするたくさんの方法があります!なぜでしょう?それは歴史的な理由のためです。プロパティは非常に古代から機能しています。それは与えられたプロトタイプでオブジェクトを作りますが、それを取得/設定することはできませんでした。アクセサを実装しました。標準に追加されました。どこでも実行されているデファクトだったので、標準の付録Bに追加されています。これはブラウザ以外の環境ではオプションです。今のところ、私たちはすべての方法を自由に使い分けています。取得/設定が可能です。通常はオブジェクト作成時に一度だけ設定を行い、変更はしません。継承しており、それは変更しません。JavaScriptエンジンは高度に最適化されています。プロトタイプを変更することは、可能ですがとても遅い操作になります。オブジェクトご存知の通り、オブジェクトはキー/値ペアを格納するための連想配列として使うことができます。キーを格納しようとした場合(例えばユーザが入力した辞書)、興味深い問題が起こります。除いてうまく動作します。入力した場合、その代入は無視されます!それは驚くことではありません。あり、文字列はプロトタイプにはなれません。このような振る舞いを実装するつもりはありませんでした。場合は正しく保存されませんでした。ここでの結果はひどくはありませんが、他のケースでは、プロトタイプは実際に変更される可能性があるため、処理が予期しない方向で間違ってしまう可能性があります。通常開発者はこのような可能性について全く考えません。これにより、このようなバグに気付きにくくなり、特にJavaScriptがサーバー側で使用されている場合には、それらを脆弱性に変えることさえあります。場合にのみ起こります。使うよう切り替えることができます。それですべて問題ありません。ここでは上手くいきます。アクセサプロパティです。