今週は制作物を投稿するつもりでしたが、忘備録として投稿したい内容があるのでそっちを先に。
プログラミング学習始めて2ヶ月。JSとPHPを学んできました。
そこでずっとずっとずっと悩みの種の一つが配列。
JS時もイマイチで、その後PHPの勉強をしたのですが、ここでも出てくる配列。
今回課題作成にあたり相当配列を使ったので、忘れないよう忘備録として書きます。
当たり前と言えば当たり前の事なんですが、私はここまでたどり着くのに2ヶ月・・・
そして正直まだ全部理解したとも思えず・・・自信はありません。
まず普通の配列
let array = ["name","id","pw","emal"];
//配列の長さを取得
console.log(array.length); //4
//配列の1個目を取得
console.log(array[1]); //"name"
//"pw"が配列内の何個目にあるか知りたい
const result = $.inArray("pw",array);
console.log(result);//2
次に連想配列
連想配列はkey:valueで成り立っている
let arary ={name:"鈴木",id:"1111",pw:"aaaa",email:"test@test.com"}
//配列内のkey名取得
const key = Object.keys(array);
console.log(key);//["name", "id", "pw", "email"]
//nameというkeyのvalueを取得
console.log(array.name);//"鈴木"
最後に多次元の連想配列、普通の配列+連想配列のイメージ
let array = [{ name: "鈴木", id: "1111", pw: "aaaa", email: "test@test.com" }, { name: "田中", id: "2222", pw: "bbbb", email: "test2@test2.com" }, { name: "佐藤", id: "3333", pw: "cccc", email: "test3@test3.com" }
];
// 多次元配列内の1番目の連想配列を取得
console.log(array[1]);//{name: "田中", id: "2222", pw: "bbbb", email: "test2@test2.com"}
// 取得した連想配列の"name"keyのvalueを取得
console.log(arryB[1].name);//"田中"
今思い返すと「配列苦手!」と感じていた要因としては、
大体何か作っていて配列使う時はループ処理が伴う事が多かった。
私はまだまだプログラミング脳ではないためループ処理はループ処理でよくわからんかったし(回すって何!?というレベルでした)、その上イメージがつかない配列があってぐちゃぐちゃ。
例えばこういうの
let array = [{ name: "鈴木", id: "1111", pw: "aaaa", email: "test@test.com" }, { name: "田中", id: "2222", pw: "bbbb", email: "test2@test2.com" }, { name: "佐藤", id: "3333", pw: "cccc", email: "test3@test3.com" }
];
// 多次元配列のキーを取得
let keyB = Object.keys(arryB);
console.log(keyB);// ["0", "1", "2"]
for (var i = 0; i < key.length; i++) {
let all = (array[i])
//多次元配列内の全ての連想配列を取得
console.log(all);
//取得した連想配列の"id"keyのvalueを取得
console.log(all["id"]);//"1111","2222","3333"
}
JSだけの時はこればっかりで訳わからなかったのですが、個人的にはPHPも勉強してデータを扱うようになって、[配列]とループ処理が少しずつわかってきたかも!?って感じです。