FullStackOpen Part1-b Javascript メモ

jsファイルは "node nameoffile.js"で実行可

変数定義


 const: 値を変更できない定数
 let: 通常の変数
varもあるが基本的にはこの二つを使う(スコープの概念があいまいなので)

配列


配列の場合はconstでも内容を変更できる
追加するときはpushを使う
メンバーにアクセスするときはforEachなど
例: const t = [0,1,2]
t.push(3)
t.forEach(value => {
console.log(value)
})

配列に新しいデータを追加して新規配列として扱うにはconcatを使用
例: const t = [1,2,3]
const t2 = t.concat(5)

Map関数 新しい配列を作成し、操作を加える
const m1 = t.map(value => value*2)
const m2 = t.map(value => '<li>' + value + '</li>') //よく使う

分割代入 …rest
const t = [1,2,3,4,5]
const [first, second, …rest] = t
console.log(first, second) // 1,2が出力
console.log(rest) // [3,4,5]が出力

オブジェクト

const object1 = {
 name: 'Masashi',
 age: 45,
 education: 'no'
}
など jsonみたいな形式
object1.nameやobject1['age']みたいにアクセス
あとでプロパティを追加することもできる
object1.address = 'Tokyo'
object1['phone number'] =12345667

関数

アロー関数をよく使う

定義
const sum = (p1, p2) =>{
 console.log(p1)
 console.log(p2)
 return p1+p2
}
使用
const result = sum(1,2)

mapの時に特に便利
const t =[1,2,3]
const tSquared = t.map(p => p*p)

ES6以前はfunctionで定義するしかなかったがアロー関数の登場により便利になった

function product(a,b){
 return a*b
}

検証するときはpropsをconsoleに出すとよい

thisについて
オブジェクトをthisで指定して呼び出すことができる

Warning: Each child in a list should have a unique "key" prop.
リスト中のアイテムを区別するためにkeyプロパティ

Class
JavascriptでもES6でクラスが導入されたが、ReactのHook機能を使うのが一般的



この記事が気に入ったらサポートをしてみませんか?