let list = [1, 2, 3];
for (const a of list) console.log(a);
//1
//2
//3
let list = [1, 2, 3];
console.log(...list);
//1 2
console.log([...list, ...[4, 5]]);
//[1, 2, 3, 4, 5]
function *gen() {
yield 1;
if (false) yield 2;
yield 3;
return 100;
}
const [a, b, ...rest] = [1, 2, 3, 4, 5];
console.log(a); //1
console.log(b); //2
console.log(rest); //(3) [3, 4, 5]
const g = a => a + 1;
const f = a => a * a;
//함수 합성
console.log(f(g(1))); //4
console.log(f(g())); //NaN
//안전한 함수 합성
[1].map(g).map(f).forEach(r => console.log(r)); //4
//NaN
[].map(g).map(f).forEach(r => console.log(r));
= Promise, then과 같은 개념