繰り返し処理の基本
for
/*
for(初期化; 演算子; 評価式;){
処理
}
*/
for(let i = 0; i < 10; i++){
console.log(i)
}
while
let i = 0; //初期化
while(i < 10){ //演算子
console.log(i); //処理
i++; //評価式
}
演算子
値を元に処理を行い値を返す記号
演算子の優先順位
以下の表は優先順位の最も高いもの (21) から最も低いもの (1) の順に並べられています。
全文は公式リファレンスへ
case
例えば優先順位20のメンバーへのアクセスは左から右に処理をしていく。
a + b || c + d
=>a + bを処理してから c + dという流れ。
case2
- 加算より乗算が優先順位が高いため乗算が先に計算される。
let a = 1 + 2 * 3;
console.log(a)
>>> 7
case3
- グループ化は最高優先順いとなるため、加算が先に処理される。
let a = (1 + 2) * 3;
console.log(a)
>>> 9
case4 インクリメント
let a = 0;
console.log(a)
//後方につけた場合
let b = a++
console.log(b, a)
>>> 0 1
//a(0)がbに代入されたあとに+1されているので
//bは0 aは1となる。
//式を分解すると
let b;
a = (b = a) + 1
//グループ化したものが優先順位が高いため、a(0)がbに代入され
// その後aに+1されるのでa = 1となる。
//前方の場合
let b = ++a
console.log(b, a)
>>> 1 1
//式の分解
let a = 0;
let b;
a = b = a + 1
//すなわち
a = b = 1
//代入の優先順位は右から左のため、
// b = 1, b = aとなるため、a と b 両方1となる。
console.log(a, b)
>>> 1 1