色々やってみたのでメモ
最近先輩が口を開くたびにNode.jsの話をしてくるので自分も勉強して良さを知りたい
配列
配列の中身は型が違ってもいいすごい
let a = [1,2,"3"]
for(x in a){
console.log(x)
}
/* output
0
1
2
*/
for(変数 in array)
の変数にはindexがはいるそうなので配列の要素を取得したいときは
for(let i = 0,len = a.length;i < len;i++){
let x = a[i];
if(typeof x === "number"){
console.log(x);
} else {
console.log(x + ":" + typeof x)
}
}
/*
1
2
3:string
*/
みたいな感じでやりましょう!
数値の型はint
だと思ってて実行してからnumber
ってことに気づきました..
console.log()
で出力すると改行されるので,しない場合はprocess.stdout.write()
にするといい
配列の要素を追加するにはa.push(XXX)
とかで追加します。
a += '4'
とかやっても末尾に加わらないので!(いけると思ってやった..)
ちなみに+=で追加すると下みたいな感じになります
a += "4"
for(x in a){
console.log(a[x])
}
/*
1
,
2
,
3
4
*/
ちゃんと追加するときは↓
a.push("4")
console.log(...a)
// 1 2 '3' '4'
...a
で配列の要素展開できるのホント素敵
例えば
var b = ['5',6]
a = [...a,...b]
console.log(...a)
// 1 2 '3' '4' '5' 6
とか言うこともできるのですごい楽に配列同士を結合できたりする
連想配列
そういえばCしかやってない友達に連想配列って言っても伝わらなかった、かなs..かなc
let b = {
a : 1,
b : 2,
c : 3
}
for(x in c){
console.log("c[" + x + "] = " + c[x])
}
/*
c[a] = 1
c[b] = 2
c[c] = 3
*/
連想配列の場合もfor(変数 in obj)
で変数にはkey
が入るのでvalue
を取得するにはb[変数]
みたいにする必要があります。
ちなみにconsole.log(...b)
とかやると怒られました
連想配列の要素を追加するときはc['d'] = 4
のような感じで追加します。
配列操作は今回pushしか書いてませんけど、当然ながら末尾に追加する以外にももっとたくさんできることがあるので是非是非調べてみてください。
おわり
オブジェクト指向を何かしら制作しながらちゃんと学びたいんだけど何作るのが一番理解深まるかなぁ