さて、戻ってきます。
このビデオでは、配列と呼ばれる最初の主要なデータ構造について説明します。
だからここにいくつかの目標があります。
最初のものは、配列が何であるか、なぜそれらを使用するのかを理解することです。
次に、コードでそれらを使用したいとします。
ですから、配列のポイントが何であるかを概念的に話すことから始めましょう。
だから私は友達のグループをモデル化したかったとします。
だから、すべての友人はCharlieとLiz DavidとMathiasのような名前の文字列です。
だから私は友人の変数を作ることができました。
それぞれが別々の変数です。別の変数を追加したい場合は、私の友人を保存する必要があります。5は他の名前と同じです。
そして私は法医学をしなければならない次のものを知り、それから友達7を知る必要があります。
そして、これはいくつかの理由で問題があります。
1つは、このコードは私たちが乾いたと考えるものではないということです。
ここにはたくさんの繰り返しコードがあります。
また、これらの友人はお互いに関連していません。
彼らは完全に別々です。
だから本当に友人のグループではありません。
だから、これは配列の完璧なユースケースです。配列は、グループデータをリストに入れます。
したがって、4つの別々の変数を持つのではなく、1つの変数を書くことができ、その内部に4つの異なる名前を格納します。
そこで、配列の仕組みを詳しく見てみましょう。
私はここで同じサンプルコードを持っています。
バールの友人は等しいとし、角括弧。
これがjavascriptに配列であることを伝えます。
この時点までここでは、通常のjavascript変数を扱っています。ここでは、右側に文字列、数値、ブール値、または未定義またはいいえがあります。
しかし、代わりに配列があります。
したがって角括弧は配列を表します。
開いたブラケットの閉じたブラケットを見ることができます。
また、内部に配列を宣言するためのデータリストがあります。
コンマ区切りのリストです。
だから私たちはCharlieカンマLiz comma Davidカンマのような値を持っています。
マティアス。
そしてその結果、4つのアイテムの配列になります。
配列に関する2番目の重要な情報の1つは、ゼロから始まるすべての文字に対応する特定の番号がある文字列の文字のようにインデックス付けされていることです。
配列は、ゼロから始まるインデックスも付けられます。
したがって、この配列の各スロットには対応する番号があります。
この4つの名前でこの配列を作成すると、配列がメモリ内でどのように作成されるかを表す図があります。
だから、私たちはチャーリーを数字0で保存しました。インデックスは1つのDavidと2つのMathiasで3つあります。
これらの配列インデックスを使用して、配列からデータを取得します。
ここで私は同じ正確な配列を初期化しています。
私がチャーリーを配列から取り出そうとするなら、私はシャーリーに相当する指数を知る必要があります。
そして、私がしているのは友達を書くことだけです。
変数名の括弧は0です。
私が最初のキャラクターをもう一度欲しければ、ストリングと同じように。
唯一の違いは、一連の文字列を扱う文字列を処理していないことです。
だから友人0がチャドリーを私に渡すつもりです。
同様に私は私の人生と心臓に加えて友人を与える友人をした場合私はデイビッドを与え、私たちはリズハートで終わる。
Davidは、インデックスを使用して配列値を更新することもできます。
チャーリーが自分の名前をチャックに変えたいのであれば、インデックスゼロの友達がゼロの配列でチャーリーを見つけ、それを別のストリングチャックと同じに設定するだけです。
だから、私たちの配列は、インデックス0にチャックがあるところのように見えます。
リズと同じこと。
彼女は彼女の名前をLizzieに変更します。ここで私たちの配列で見ることができるLizzieの1人の友人であるLizの正しいインデックスを見つけるだけです。
LizzyがゼロのChuckのように見える。
配列の次の特徴は、既存の配列にデータを追加できることです。
だから私は本当にすごい新しい友達ができたら、新しい友人を実際に使うことができます。友達にアクセスして、まだ存在しないインデックスをここに置くだけです。
だからこのケースでは、もし私が家族のために友達をしたら、私はここで指導者になるでしょう。私はあなたに詐欺師の簡単なデモを見せません。
私はそれを行うために色をモデル化するために配列を使うつもりです。
私はvarの色の配列equalsを定義するつもりです、そして、私はそこに赤いオレンジと黄色を開始する文字列としてちょうどいくつかの色を入れて、私はenterを打つでしょう。
色の配列を定義しました。
色にアクセスすると3つの項目があり、オレンジ色を印刷したい場合は、1のインデックスを持つのでパケット1の色を使用し、黄色の後に別の要素を追加したい場合はオレンジ色にします緑で
私は0 1 2を数える必要があります。
したがって、3のインデックスは次のインデックスです。
インデックス3色3つは緑色に等しい。
そして今私達が色を見れば私は赤いオレンジの黄緑を得る。
緑色を暗緑色に変えたいとします。
私はそれに最初にアクセスする必要があります。
だから色3。
それが緑色であることを確認してください。
だから私は今、色を3つを暗い緑色に変えようとしています。
私が10の色のような何かをすれば、簡単なメモはバイオレットと等しく、私はエンターを押す。
色がどのように見えるかを見てみましょう。
赤いオレンジ色の黄緑色の暗い緑色が表示され、未定義になっていることがわかりました。
タイムズ6。
そこで、私はVioletに10のインデックスを付け加え、3のインデックスと10のインデックスの間に多くの空白が残るということです。
だから、javascriptは空のスペースを作り、未定義でいくつかを埋めます。
だから、この配列には理想的ではない空きスペースがたくさんあります。
そこで次のビデオでは、ここでまとめていくために、いつでも私たちの配列にあるアイテムの数を追跡する必要がない、データを追加する別の方法を紹介します。
私は配列に関するいくつかの注意点があります。
その第一は、配列を定義するさまざまな方法があるということです。
第1の方法は、角括弧を使用して空の配列を定義することです。
この場合、私は友人の配列を定義しましたが、残念ながら友人はいません。
だからそれはちょうど空の角括弧です。
配列を定義するもう1つの方法は、新しい配列に大文字のAとそれに続くカッコを書くことです。
だから私はこれが何であるかについてはあまり詳しく述べないが、これを関数と考える。
それは関数です。
私たちはカッコでそれを呼んでいます。
これは私たちをこのような新しい配列にします。
したがって、これらはどちらの場合も同等です。
私たちは空の友人の配列を持っています。
次の点は、配列がどのようなタイプのデータも保持できることです。
だからあなたはCharlieやLizのような文字列でそれを見てきましたが、ちょっと後で見られる他の配列の文字列では定義されていないブール値で数字を埋め込むことができます。
したがって、あらゆる種類のデータで配列を埋めることができます。
そして、それらはすべて一つのタイプでなければならないわけではありません。
だから、ここでは、ブール型の文字列の数と、1つの配列内にすべてがない例を示します。
最後に私が指摘しておきたいのは、配列には文字列のようなlengthプロパティもあるということです。
この例では、4つのアイテムの配列を定義していますが、何も驚くことはありません。
それは私に4を与える。
私は先に進み、私の領事を開き、それを実証するでしょう。
ここでは、犬と犬と呼ばれる新しい配列を定義しましょう。
私は文字列を定義します。
Rusty WyattとAliはそんな感じです。
私がドッグスターを長さに走らせれば、長さが数えられるので3つになる。
そこにはいくつのものがあるのですか。
しかし、この配列の中で最も高いインデックスは常に長さよりも1つ小さいことに注意してください。
だから、すべてが犬の括弧2へのインデックスであり、あなたはすべてを取得します。
それは文字列のように重要です。
var nameがrestiと等しい文字列を定義することができ、hotlinkという名前を付けます。
5文字あるので5を得るが、Yのインデックスは4の名前のインデックスである。
理由を教えてください。
インデックスはゼロから始まるためです。
それでレースのためのものだよ。
次のビデオでは、すぐに問題を設定します。