- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- es6
- 자바스크립트
- 알고리즘
- 백준
- 모던 자바스크립트
- 이터러블
- Angular
- http
- JavaScript
- git
- 네트워크
- 그림으로 배우는 http&network
- map
- C++
- 에러처리
- js
- 프론트엔드
- Java Script
- git error
- deep dive
- React
- 웹
- 모던 자바스크립트 deep dive
- get
- async
- 백준 실버
- html
- 상태관리
- error
- 비동기
목록es6 (4)
sharingStorage
spread 문법 ES6에서 도입된 스프레드 문법 ...은 하나로 뭉쳐 있는 여러 값들의 집합을 펼쳐서 개별적인 값들의 목록으로 만든다. 스프레드 문법을 사용할 수 있는 대상은 Array, String, Map, Set, DOM 컬렉션, arguments 와 같이 for ... of 문으로 순회할 수 있는 이터러블에 한정된다. 스프레드 문법의 결과는 값이 아니다. 따라서 결과를 변수에 할당할 수 없고 다음과 같이 쉼표로 구분한 값의 목록을 사용하는 문맥에서만 사용가능하다. 함수 호출문의 인수 목록 배열 리터럴의 요소 목록 객체 리터럴의 프로퍼티 목록 35.1 함수 호출문의 인수 목록에서 사용하는 경우 Math.max 메서드의 인수로 배열을 전달할 때 스프레드 문법 사용시 간결하고 가독성이 더 좋다. 스프..
26.1 함수의 구분 ES6 이전까지 자바스크립트의 함수느느 별다른 구분 없이 다양한 목적으로 사용되었다. 이는 혼란스러우며 실수를 유발할 가능성이 있고 성능에도 좋지 않다. 이러한 문제를 해결하기 위해 ES6에서는 함수를 사용 목적에 따라 세가지 종류로 명확히 구분했다. ES6 함수의 구분 constructor prototype super arguments 일반 함수 O O X O 메서드 X X O O 화살표 함수 X X X X 26.2 메서드 ES6 사양에서 메서드는 메서드 축약 표현으로 정의된 함수만을 의미한다. ES6 메서드는 자신을 바인딩한 객체를 가리키는 내부 슬롯 [[HomeObject]]를 갖는다. 이는 super 키워드를 사용할 수 있다는 말이기도 하다. 26.3 화살표 함수 화살표 함수..
15.1 var 키워드로 선언한 변수의 문제점 15.1.1 변수 중복 선언 허용 var키워드로 선언한 변수는 중복 선언이 가능하다. var x=1; var y=2; var x=100; var y; console.log(x); //100 위와 같이 동일한 이름의 변수가 이미 선언되어 있는 것을 모르고 변수를 중복 선언하면서 값을 할당하면 의도하지 않게 변수의 값이 변경되는 부작용이 발생한다. 15.1.2 함수 레벨 스코프 var 키워드로 선언한 변수는 오로지 함수의 코드 블록만을 지역 스코프로 인정한다. 따라서 함수 외부에서 var 키워드로 선언한 변수는 코드 블록 내에서 선언해도 모두 전역 변수가 된다. var x=1; if(true){ var x=10; } console.log(x); //10 15.1..
Pure function(퓨어 함수) pure함수란 다음 두가지 조건을 만족하는 함수이다. predictable (예상가능한) no side effects (부수효과가 없는) predictable 여기서 predictable이란 퓨어함수가 호출된 횟수에 관계없이 동일한 input은 동일한 output을 반환해야한다는 것이다. no side effects 이것을 이해할면 side effect부터 알아야한다. side effect의 사전적 의미는 '원래의 목적과 다르게 작용하는 효과'인데 여기서는 '최종 output과 관련없는 함수가 수행하는 작업'으로 생각한다. (상태의 변화를 나타낸다고도 한다.) 예컨데 덧셈을 하는 add함수가 있는데 그 안에 console.log를 사용해 여러가지 값을 출력한다면 이것..