앞선 이터러블 프로토콜과 map을 공부하면서 사용자 정의로 이터러블한 객체를 순회하면서 값을 매핑했다. const map = (f, iter) => { const res = []; for (const p of iter) { res.push(f(p)); } return res; }; let m = new Map(); m.set('a', 10); m.set('b', 20); const it = m[Symbol.iterator](); it.next(); it.next(); it.next(); map(([k, a]) => [k, a * 2], m); 이터러블을 따르는 객체는 임의로 만든 map 함수에 잘 작용하는 이터러블 객체이다. filter 함수 const products = [ { name: '허니버터칩'..
자바스크립트
Map 메서드 const products = [ { name: '허니버터칩', price: 1500 }, { name: '벌집핏자', price: 1800 }, { name: '치킨팝', price: 800 }, { name: '에낙', price: 500 }, ]; 위와 같은 배열이 있다고 할 때, 이 배열 속 요소들의 객체에서 name만 뽑아낼 수 있는 방법은 간단하게 두 가지가 있다. const names = []; for (const product of products) { names.push(product.name); } 이와 같이 순회를 하면서, 각 객체 안에 접근하여 name들을 새로운 빈 배열에 push하면서 증가시키는 방식이다. 이를 함수형 프로그래밍으로 풀어서 접근하면 아래와 같이 작성..
기존의 이터러블 객체 순회 기존의 이터러블 객체(순환이 가능한 객체)는 for i++과 같은 형태로 이터러블 객체를 순환하였다. const students = ['동규', '소현', '찬진', '요셉']; for (let i = 0; i < students.length; i++) { console.log(students[i] + '님은 제 친구입니다.'); } 위와 같이 전체 이터러블 객체를 순환하도록 하였다. 이뿐만 아니라 문자열도 이터러블한 자료형이기 때문에 위와 같이 할 수 있다. const alphabet = 'abcdef' for (let i = 0; i < alphabet.length; i++) { console.log(alphabet[i]); } 즉, 숫자를 키로 하여 이터러블한 객체를 순회..
toString() : 숫자를 문자로 let num = 10; num.toString(); // "10" num.toString(2); // "1010" 숫자형 변수에 toString()이라는 메서드를 사용하면 그 변수를 문자형으로 변환하여 반환해줍니다. 이때, 원본 자료형은 유지합니다. 또한, 매개변수로 숫자를 인자로 넣으면 그 진수로 변환하는 것입니다. 2진수, 16진수 등으로 사용 가능합니다. Math 1. Math.PI : 원주율 반환 2. Math.ceil() : 올림 부동소수점 자료형에서 값을 올리기 위해 사용합니다. Math.ceil(5.7); // 6 3. Math.floor() : 내림 부동소수점 자료형에서 값을 내리기 위해 사용합니다. Math.floor(5.3); // 5 4. Mat..