私たちがコンストラクタ関数を呼び出したときに、何も返さなかった最後のビデオの最後にようこそ。
コンストラクタ関数の目的はオブジェクトを構築することです。
したがって、関数を呼び出すときに、新しいオブジェクトを作成したいと思っています。
残念ながら、それは今起こっていません。
しかし、良いニュースは、新しいキーワードを使用するときにnewキーワードを使用して問題を解決できるということです。
すべてが魔法のように機能します。
最初のハウス変数は、ベッドルームのバスルームと平方フィートのプロパティを持つオブジェクトになりました。
しかし、ちょうど新しいキーワードが何をしているのか見てみましょう。
キーワードのように、この新しいキーワードの理解は非常に難しいことがあります。
しかし、スライドを見直す。
これらのルールを覚えておいて、最も重要なのは2つの例をコーディングしてみてください。
それは本当に材料のあなたの注意を助けるでしょう。
新しいキーワードが関数とともに使用されていることがわかります。
実際には、新しいキーワードを関数とともに使用する必要があります。そうしないと、型エラーが発生します。
なぜそうなのか見てみましょう。
新しいキーワードが最初に何をするかを調べる。
これは薄い空気から物体を作り出します。
次に、キーワードthisの値を、使用されているコンストラクタ関数に設定します。
それは、ちょうど作成されたオブジェクトです。
第3に、暗黙のリターンを追加します。
これは、関数の最後で、newキーワードを使用して作成されたオブジェクトを関数から返すことができるようにします。
最後に、これは最もトリッキーです。
ダブルアンダースコアを使用してアクセスできる空のオブジェクトにプロパティを追加します。Prato double
underscoreこの二重アンダースコアは一般的にDunderと呼ばれます。
したがって、このプロパティはDunder Pratoとしても知られています。Dunder
Pratoプロパティは、作成されたオブジェクトを、コンストラクタ関数のプロトタイププロパティにリンクします。
その最後の文はぼかしのように見えるかもしれませんが、あまり心配する必要はありませんが、私たちはこれを徹底的に詳しく説明します。
ここでは、犬のコンストラクタ関数を作成して練習しましょう。
各犬は名前と年齢をボーナスとし、Barkという関数から作成された各犬オブジェクトの関数を持つ必要があります。
この関数は、吠えた文字列に追加された犬の名前をログから取り除き、ビデオを一時停止し、これを理解しようとします。
だから何を思いついたのですか？
うまくいけば、これはこのように見える。
ここでは、犬用のコンストラクタ関数があります。
この関数は2つのパラメータを取ります。
名前と年齢。
あなたはあなたのパラメータを何でも意味することができます。
しかし、名前と年齢と呼ばれるオブジェクトを作成するためにプロパティをアタッチする必要があるので、おそらくパラメータを指定する必要があります。
この関数の内部では、関数に渡される値に等しいキーワードのthisプロパティを設定し、キーワードにBarchという関数を追加することで、文字列と連結された最初の名前プロパティを取り消したちょうど次の行に駐車した。
rustyとFeydeauという2つの変数を作成し、それらをnewキーワードで呼び出されるdogコンストラクタ関数の値と等しく設定しています。
新しいキーワードで要約する前に、動画を一時停止して、その4つのことのいずれかを覚えているかどうかを確認します。
まず、空の空から空のオブジェクトを作成します。
次に、キーワードの値を設定します。
これは、作成されたばかりの空のオブジェクトであるために使用されている関数内のものです。
第3に、暗黙のリターンを追加します。
これは、関数の最後で、newキーワードを使用して作成されたオブジェクトを関数から返すことができるようにします。
四番目は、ちょうど作成されたオブジェクトにDunder Pratoプロパティを追加します。
このビデオでは、キーワードnewを使用してコンストラクタ関数からオブジェクトを作成する方法を調べます。
私たちは、この新しいキーワードが果たしている4つのことについて学びました。私たちはこれをもっと深くカバーし、次のビデオではファンダメンタルズが不可欠であることを知っていますので、ぜひお読みください。
複数のコンストラクタ関数を使用する方法と、コードをリファクタリングしてより洗練された方法にする方法について説明します。
それを見て