お帰りなさい。
これは、次の数台のjavascriptオブジェクトの最後のビデオです。
このビデオでは、JavaScriptのメソッドについて説明します。
私はちょうど私のセットアップを説明したい。
私はシンプルなHTMLファイルを持っています。
だからあなたが一緒に従いたいならば、絶対にこれをタイプアップする必要はありません。
コンソールでこれを行うことも、自分のファイルを作ることもできますが、このページは彼には必要ありません。
だから、私は何をしようとしているのは、javascriptでどのようなメソッドがあるかについて話を始めることです。
私たちはLBJと呼ばれるものを作ることができることを見てきました。
そして、私たちは、そのオブジェクトの代わりに、どんな種類のデータでも置くことができます。
だから私たちは文字列Charkeという名前を持つことができました。
あなたは、私たちがそれを持つことができる数の年齢を持つことができますクールですそれは私たちが配列であり、友人がボブとティナになることができる友達を持つことができるブール値です。
しかし、私がこのビデオであなたを紹介することに興味を持っているのは、実際にオブジェクトとしてプロパティをプロパティとして追加できることです。
その場合、実際にはプロパティではなくメソッドと呼ばれます。
つまり、メソッドはオブジェクトではなくプロパティである単なる関数です。
だから私はここで作ることができます。
Addを関数と呼び、xとyの2つの数値とそのすべてを取ります。
これを正しくインデントすると、xとyが返されます。
だからここで新しいことは、関数を追加することだけです。
関数が何をしているかは関係ありません。
どの関数もここで動作し、プロパティの値として設定しています。
私がここに入ると、RBJを見ると、それが対象で、45人の友達がいることがわかります。
アレイはクールな名前のチャックです。
そして、addは関数です。
だから、もしaddを呼びたいと思ったら、addを書くことはできません。私たちがする必要があるのは、obey j
dotを書いてこのようにして、10と5の2つの数値を与え、15を得ましょう。
それを呼び出すことは、カッコが必要と同じように機能します。
私たちは議論が必要です。
唯一の違いは、それだけではそれがこのようなものではないということです。
実際にはOPGオブジェクトの代わりになりました。
だから、これはこのようなことから少し馴染んでいるかもしれません。
Contrl Balogはまったく同じ形式です。
領事館はオブジェクトであり、ログはそのオブジェクトのメソッドであり、オブジェクトドットADと同じようにそれを呼び出すことが判明しました。
彼らはまったく同じように動作します。
だから、なぜオブジェクトにメソッドを追加したいのだろうと思っているかもしれません。
私たちの機能をこのように別々に定義するだけではどうですか？
RBJオブジェクトの内部に追加する必要があるのはなぜですか。
いくつかの理由があります。
1つ目は、コードを整理しておき、オブジェクトを論理的にグループ化して、オブジェクト上のメソッドとして関数を追加する利点の1つを示すことができるようにすることです。
私はここで簡単な例をしようとしています。
だから私たちは猫と犬の好きな例に戻り、話すという方法を作りたかったとしましょう。
私は話すという機能を作りたかったとしましょう。
これは犬や狼のためのものです。
以上です。
非常に簡単です。
そして私はこのように話すことができ、私は何を得る。
私はまた、猫のために働くために話すというメソッドが欲しいと仮定しましょう、それは返す必要があります。
ニャー。
まあ、私が話す機能を書くと私はヤウを返す。
そして今私は話すと私は草を得る。
しかし今、私は狼を返す元の話にアクセスする方法がありません。
ここで何が起こったのかは、名前空間の衝突と呼ばれるものです。
それは、同じ名前の2つの異なるものがあるということを言いたいだけの素晴らしい方法です。
したがって、これらの関数をメソッドとしてオブジェクトに追加すると、speakという名前の2つの異なるものを持つことができます。
それらを異なる名前空間に置くことによって。
ですから、var dog空間と呼ばれるものを作ることができ、それは空のオブジェクトにすぎません。
そして、ちょうど犬の空間ドットが話すことが機能だと言うだけです。
そして我々は何を返す。
そして、Varkの猫の空間にも同じことをします。
だから、犬の間隔の猫のスペースはちょうど作り上げる名前であり、私たちのメソッドを追加する空のオブジェクトになるでしょう。
それでは、私は猫の空間ドットが関数equalsを話すと言うことができ、私たちがここで行うのはすべて帰りです。
うん。
だから私は犬のために話を呼びたい場合、私はそれが狼を返すようにしたい。
彼らがしなければならないのは、犬の空間が話すことです。彼らが私に会いたいのであれば、私がする必要があるのは、猫の空間の点を話すことです。
だからこれもまたちょっとファンキーです。
これはコードを整理するうえで便利な方法です。
まず第一に、論理的にグループ化された一連のメソッドを持つことができるので、すべての犬メソッドがその犬の空間に入り、すべての猫のメソッドがその猫の空間に入ります。
しかし、これらの名前空間の衝突を避ける方法でもあります。
私は今あなたが犬と猫に疲れていることを知っています。それは実際の世界の例のようには見えませんが、コメントや投稿、タグなどにも同じロジックが当てはまります。
新規または削除というメソッドがあるかもしれません。
コメントのために、投稿の削除と呼ばれるものがあります。
もう1つはユーザーのための削除と呼ばれ、すべてが矛盾しないように、これらの名前空間を適切に持つ必要があります。
だから、単に削除を書くのではなく、ユーザーが削除してからSTART後の削除とコメントの削除があり、私たちがTabacとプログラミングを受けるたびにそのようなものが表示されます。
これまでに説明した内容をまとめると、メソッドをオブジェクトに追加することができます。つまり、関数をプロパティとして追加し、他のプロパティと同様に追加することができます。
文字列や数字のように扱います。
それは関数がJavaScriptの値であるからです。
我々はそれらを渡すことができます。
それらを実際に有用なオブジェクトに値として追加することができます。
私たちが話した第二の事は、なぜあなたがこれをやるのかということです。
私たちが話した最初の理由は、ネームスペースの衝突を防ぎ、実際にはコードをグループ化できるということだけです。
つまり、異なるオブジェクトに格納されていて矛盾しないように格納されている点を除けば、全く同じ名前のプロパティと関数とメソッドを持つことができます