ホームページ  >  記事  >  ウェブフロントエンド  >  フロントエンドの新しいオペレーターは何をしますか?

フロントエンドの新しいオペレーターは何をしますか?

DDD
DDDオリジナル
2023-11-13 14:20:291245ブラウズ

フロントエンドの new 演算子は、新しいオブジェクト インスタンスを作成します。具体的な手順: 1. 空の単純な JavaScript オブジェクトを作成します; 2. 空のオブジェクトの "__proto__" 属性をコンストラクターのプロトタイプ オブジェクトにポイントします; 3. コンストラクター内の this キーワードを新しく作成された空のオブジェクトにポイントします; 4. 、コンストラクター内のコードを実行し、新しいオブジェクトにプロパティとメソッドを追加します; 5. コンストラクターがオブジェクトを返す場合はこのオブジェクトを返し、そうでない場合は新しく作成されたオブジェクトを返します。

フロントエンドの新しいオペレーターは何をしますか?

# このチュートリアルのオペレーティング システム: Windows 10 システム、Dell G3 コンピューター。

以前の開発では、新しいオブジェクト インスタンスを作成するために new 演算子が使用されました。 new 演算子を使用する場合、次の手順が実行されます。

  1. 空の単純な JavaScript オブジェクト (つまり、{}) を作成します。

  2. この空のオブジェクトの __proto__ 属性をコンストラクターのプロトタイプ オブジェクトにポイントします。

  3. コンストラクター内の this キーワードが、新しく作成されたこの空のオブジェクトを指すようにします。

  4. コンストラクター内のコードを実行して、この新しいオブジェクトにプロパティとメソッドを追加します。

  5. コンストラクターがオブジェクトを返す場合は、このオブジェクトを返し、それ以外の場合は、新しく作成されたこのオブジェクトを返します。

このプロセスを詳しく分析してみましょう:

空の単純な JavaScript オブジェクトを作成します: この空のオブジェクトが、作成されるインスタンス オブジェクトになります。このオブジェクトは、コンストラクターのプロトタイプ オブジェクトのプロパティとメソッドを継承します。

この空のオブジェクトの __proto__ 属性をコンストラクターのプロトタイプ オブジェクトにポイントします。プロトタイプ オブジェクトは、継承可能なプロパティとメソッドを含むオブジェクトです。 JavaScript では、すべての関数にそのプロトタイプ オブジェクトを指すプロトタイプ属性があります。 new 演算子を使用してオブジェクトを作成すると、新しいオブジェクトの __proto__ 属性はコンストラクターのプロトタイプ オブジェクトを指します。

コンストラクター内の this キーワードが、新しく作成された空のオブジェクトを指すようにします。コンストラクター内で、this キーワードを使用して、この新しいオブジェクトにプロパティとメソッドを追加できます。ここでの this キーワードは、現在作成中のインスタンス オブジェクトを指します。

コンストラクター内でコードを実行して、この新しいオブジェクトにプロパティとメソッドを追加します。コンストラクター内で、この新しいオブジェクトにプロパティとメソッドを追加して、必要な状態に初期化できます。

コンストラクターがオブジェクトを返す場合は、このオブジェクトを返します。それ以外の場合は、新しく作成したオブジェクトを返します。コンストラクター内に return ステートメントがあり、オブジェクトを返す場合は、このオブジェクトを返します。それ以外の場合は、New だけを返します。オブジェクトが作成されました。これは、必ずしも this が指すオブジェクトではなく、コンストラクター内でカスタム オブジェクトを返すことができることを意味します。

new 演算子を使用してオブジェクト インスタンスを作成する場合、空のオブジェクトを作成し、その __proto__ 属性をコンストラクターのプロトタイプ オブジェクトにポイントします。次に、コンストラクター内のコードが実行されて、この新しいオブジェクトにプロパティとメソッドが追加されます。最後に、コンストラクター内に return ステートメントがある場合は、指定されたオブジェクトが返され、それ以外の場合は、新しく作成されたオブジェクトが返されます。このようにして、コンストラクターを使用して複数のインスタンス オブジェクトを作成し、それらはすべてコンストラクターのプロトタイプ オブジェクトのプロパティとメソッドを共有できます。

以上がフロントエンドの新しいオペレーターは何をしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。