JavaScript27 [FP&ES6+] 제너레이터 함수형 프로그래밍과 JavaScript ES6+ 강의를 듣고 정리한 내용입니다. ✅ 제너레이터 제너레이터는 이터레이터이자 이터러블을 생성하는 함수이다. 지난 포스팅에서 이터레이터에 대해 적었었는데, 다시 복습해보자면 이터레이터는 {value, done} 객체를 리턴하는 next() 를 가진 값이고 이터러블은 이터레이터를 리턴하는 [Symbol.iterator]()를 가진 값이다. 제너레이터가 이터레이터이고 이터러블을 생성한다고 했으니 다르게 말하면 제너레이터는 이터레이터를 리턴하는 함수이다. 제너레이터는 일반 함수 앞에 *을 붙여서 제너레이터 함수를 만든다. 그리고 yield라는 키워드를 사용해 반환할 값을 정의한다. function* gen() { yield 1; yield 2; yield 3; } l.. 2021. 12. 1. [FP&ES6+] 리스트 순회와 이터러블, 이터레이터 함수형 프로그래밍과 JavaScript ES6+ 강의를 듣고 정리한 내용입니다. ✅ 리스트 순회 기존 ES5 문법에서의 리스트 순회는 for문을 이용했다. const arr = [1, 2, 3]; for(var i = 0; i < arr.length; i++){ console.log(arr[i]); } // output // 1 // 2 // 3 const str = "abc"; for(var i = 0; i < str.length; i++){ console.log(str[i]); } // output // a // b // c i의 값을 증가시키면서 대상의 i번째 요소에 접근하는 것이다. ES6+에서는 for...of문이 추가되었다. const arr = [1, 2, 3]; for(const a of .. 2021. 10. 29. [FP&ES6+] 평가와 일급, 일급함수와 고차함수 함수형 프로그래밍과 JavaScript ES6+ 강의를 듣고 정리한 내용입니다. ✅ 평가 코드가 계산되어 값을 만드는 것을 말한다. 1 + 3이라는 코드가 평가되어 4라는 값이 나오는 것과 2 * 4라는 코드가 평가되어 8이라는 값이 나오는 것을 볼 수 있다. ✅ 일급 값으로 다룰 수 있고 변수에 담을 수 있다. 함수의 인자로 사용될 수 있으며 함수의 결과로 사용될 수 있다. const num = 10 const add10 = a => a + 10; const result = add10(num); console.log(result) // Output: 20 여기서 num이라는 변수에 10이라는 값이 저장되고 add10이라는 함수의 인자로 num이 전달되었다. 그리고 add10(num)의 결과가 resul.. 2021. 9. 27. ES6 문법 정리 템플릿 문자열 var book = { name: '리액트 프로그래밍 정석', location: 'A-2' } var msg = '도서 ' + book.name + '의 위치는 ' + book.location + '입니다.' 기존 자바스크립트에서는 문자열을 연결하려면 병합연산자(+)를 사용해야 했다. 위의 예시에서 msg라는 문자열 변수 하나를 만들기 위해 무려 4개의 병합연산자가 들어간다. var book = { name: '리액트 프로그래밍 정석', location: 'A-2' } var msg = `도서 ${book.name}의 위치는 ${book.location}입니다.` 템플릿 문자열은 작은따옴표대신 백틱(`)으로 문자열을 표현한다. 템플릿 문자열에서 변수, 함수, 식 등을 사용하기 위해서는 ${.. 2021. 7. 24. 검색화면만들기(MVC) - 추천 검색어 탭 구현 보호되어 있는 글 입니다. 2021. 7. 2. 검색화면만들기(MVC) - 탭 구현 보호되어 있는 글 입니다. 2021. 7. 2. 검색화면만들기(MVC) - 검색결과구현 보호되어 있는 글 입니다. 2021. 7. 2. 검색화면만들기(MVC) - 검색폼구현(2) 보호되어 있는 글 입니다. 2021. 7. 1. 검색화면만들기(MVC) - 검색폼구현(1) 보호되어 있는 글 입니다. 2021. 6. 30. 이전 1 2 3 다음