お帰りなさい。
それで、最後のビデオでは、次のいくつかのビデオで話した最初のデータ構造であるjavascript配列について説明しました。
オブジェクトと呼ばれるノートのデータ構造を紹介します。
したがって、配列の場合と同じように2つの主な目的があります。
私たちは、最初にどのようなオブジェクトを使用するのかを理解したいと思っています。
それらは配列とどのように比較されますか？
そして2番目の目的は、javascriptオブジェクトを使ってコードを書く方法です。
進んで始めましょう。
それでは、仮説的な状況があります。
私はJavaScriptを使って一人の人間をモデル化したかったとします。
それぞれの人は名前と年齢と都市を持っています。
ですから、私は3つの異なる変数に年齢と都市という名前を付けることができますが、それらはお互いに関連していないということができる多くの方法があります。
彼らは完全に別々です。
personは最初の項目がCindyという名前の配列に等しいです。
だから私がそれらを接続したいなら、ここでやっているような配列を使うことができますvar
2番目の項目は32歳で、最後の項目はMissoulaまたは都市です。
このデータは実際にはリストではないので、これは配列の大きな用途ではありません。
はい、それを配列に強制することはできますが、論理的な順序を持つリストを持つ配列の形式には適していません。
この配列から街にアクセスするための論理的順序は実際にはありません。
私は人の括弧も書く必要があります。
そしてそれは私には街がインデックスにもあることを知る必要があります。
私が誤って注文を取り消した場合、Travissに名前の先頭インデックス0が付いていましたが、これらの2つを混ぜます。
だから私はインデックス1の都市にインデックス2の年齢を持っていました。
それから、ブラケット2の人にアクセスしようとすると、都市の代わりに年齢になるでしょう。
だから、配列がすべての状況に対して完璧な解決策ではないことを示すだけです。
私たちがここで使うjavascriptオブジェクトであるはるかに優れたデータ構造があります。
ここでは、年齢と都市という名前のperson配列をどのように取って、それをjavascriptオブジェクトに変換するかの例を見ることができます。
まず注意すべきは、配列の角括弧ではなく中括弧があることです。
次の重要な部分は、このオブジェクトのすべてのアイテムがキー値のペアであることです。
だから私たちはプロパティのコロン値の名前があります。
年齢は32歳のミズーラです。
このスライドはまったく同じことを示しています。
私たちは別の人物を持っています。varの人は中括弧に等しく、その中にトラヴィスの年齢をLとする21の都市名が設定されています。
A. ここでは、このデータ構造がどのように見えるかの簡単な図があります。
このオブジェクトには3つの異なるスロットがあり、最初の項目と2番目の項目と3番目の項目がある配列とは異なり、オブジェクトには順序が組み込まれていないことに注意することが重要です。
順序がない場合、オブジェクトの代わりに項目を考えてください。
どんな順番でどのように宣言しても問題はありません。
だから、この図はそれらを順序で示していますが、それは単に私が命令を選んでいなければならないからです。
あなたはトラヴィスがキー名の下に格納されているのを見ることができます。
21はキー時代に格納されます。
私も。 A. キー都市の下に格納され、オブジェクトからデータを取り出す。
我々は2つの選択肢がある。
オブジェクトの人物の名前を角括弧で指定し、キーの名前を使用することができます。
だから、この場合私はトラビスを人物の対象から外しています。
ですから、私は正しい人の角括弧の名前を引用符で囲んでいます。
これは配列と非常によく似ています。
唯一の違いは、これは数字ではないということです。
これは文字列です。
もう1つのオプションは、ドット表記法を使用することです。ドット表記法は少し短く単純です。
Right Personのドット名と名前は明らかにキーの名前と一致していなければなりません。
私は先に進んで、そのことを実証します。 私は犬と呼ばれる新しいオブジェクトを作成し、私の犬はいつものようにプロパティ名を持つつもりです。
Rusty彼は最高の犬と半分の品種です。
彼は老いた年齢で、彼は3歳です。
それは私に私の対象犬を与えます。
それをコンソールで見ると、オブジェクトであることがわかります。
あなたの名前は泥のように繁殖します3。
だから私は犬のオブジェクトから自分の年齢にアクセスしたい場合、私は最初の無傷の犬をすることができますし、引用符の年齢で彼らは3つを得るか、私は犬の年齢を行うことができますまた私は3つを取得します。
いずれかを使用するのはあなた次第です。
私はそれがより短いので、犬の犬の年齢を使用することを好む。
引用符を使用する必要はありません。
どちらの側にも二重のブラケットは必要ありません。
あなたはそれを必要とします。
しかし、このスライドにはいくつかの違いがあります。
私は主な違いの3つを示しています。
したがって、プロパティが数値で始まる場合はドット表記を使用できません。
だから、ここでDOTの何らかのオブジェクトが有効でないことがわかります。
しかし、私が1つのblahと呼ばれるプロパティを持っている場合、私は角括弧を使用して引用符でそれを置く必要があり、それはちょうどそれがjavascriptで設定されている方法です。
ここでは3つ目の例にジャンプします。これは、プロパティ名に空白があるようなドット表記を使用できないということです。
明らかにこれはうまくいきません。
Javascriptは、私たちがdot favにアクセスしていると考えています。だからとにかく、実際には良い練習ではない空間を持つプロパティが必要な場合は、引用符を使用する必要があります。
Fav。
スペースカラーは、角カッコ表記を使用します。
そして中間の例は、あなたが変数を使って物を調べることができることを示しています。
ブラケット記法を使用する場合。
だから私はここで文字列またはTRと呼ばれる変数を持っていると私はTRとしていくつかのオブジェクトをしようとすると引用符で等しいですそれはTRとしてプロパティを探しますしかし、私はTRとしてオブジェクトの角括弧を行う場合それは行くTRとして評価し、引用符で名前を付けます。
だから、これはいくつかのオブジェクトのnameプロパティを検索します。
だから、これは時折実際に見られるものです。
ここで違いを知る価値があります。
変数名を使用して角カッコ表記を使用すると、プロパティをルックアップできます。
次は、オブジェクト内のデータを更新することができます。
したがって、データにアクセスして等号で再割り当てする配列と非常に似ています。
だから、ここではTravisの年齢が21歳のLと同じ人物のオブジェクト名があるのが分かります。 A. 私がトラヴィス時代に追加したいのなら、それは彼の誕生日です。
私がする必要があるのは、アクセス人の年齢です。
角括弧またはドット表記を使用して、再割り当てすることができます。
だから、人の年齢は1に等しい。
だから、年齢が22歳の人を1人追加するか、人口都市を使用してロンドンに再割り当てすることができます。
だから、人と都市がロンドンに等しいという人は、ロンドンの都市を持つ人になります。
だからそれを実証するだけです。
Rusty breeders muttという名前の私たちの犬のオブジェクトに戻りましょう。
年齢は3歳です。
Rustyはちょうど誕生日だったので、私は彼の年齢の犬を変更するつもりです。
年齢は等しく、私はこれを4と同じにすることができます。それは、何があっても私が犬を見ることができるにしても、それを4にすることです。
または私は犬をすることができます。
年齢プラスは既存の年齢に1を加算するだけのもので、それは5を与えます。
また、角カッコ表記を使ってそのことを実演します。
私はRustyの名前を彼のニックネームのTaterに変更したいとしましょう。
私は犬の大括弧の名前を書くだろうと私はrestiを与えると私はTatorになるようにそれを再割り当てします。
そして、あなたが犬を見ると、私たちは今、Tatorを5歳で解放しました。
レースで見たようにオブジェクトを初期化するにはいくつかの方法がありますので、最初に空のオブジェクトを作成するか、ここにあるようにします。
Var personは空の中括弧に等しいので、事実の後にデータを追加することができます。
一度に1つずつ。
人の名前は、都市がLである21歳のトラビス人です。 A.
私たちは一度にすべてを行うことができます。これまでに見たことは、オブジェクトのリテラル表記と呼ばれています。
今のところ人は平等で、中括弧の中で私はちょうど私の財産名Travis
age callと21都市Colan Lを書いています。 A. あなたが非常に頻繁に表示されない最後の方法は、JavaScriptの後半になるまでです。
彼は私に新しいオブジェクトを作って空のオブジェクトとして返す新しい配列のような関数である新しいオブジェクトを使うことができると言った。
そして、人の都市に年齢ではない人名を追加することができます。
ですから、今のところこのシンタックスとこのシンタックスをはるかに頻繁に見ることになります。
私がオブジェクトを作りたいもう一つのポイントは、配列のようにあらゆる種類のデータを保持できることです。
だから、私たちのデータは数字や文字列、または配列であっても、あなたがここで見ることができる別のオブジェクトであってもかまいません。
配列と同じように、私たちが好きなだけ混合して一致させることができます。
ここでは、オブジェクトと比較して構文を消去する次のビデオでここで中止します