이 블로그는 광고 클릭 수익으로 운영됩니다!
괜찮으시다면 광고 차단을 풀어주세요 ㅠㅠ

게시글

강좌17 - EcmaScript - 2년 전 등록 / 일 년 전 수정

ES2016(ES7) 변화

조회수:
0
이 블로그는 광고 클릭 수익으로 운영됩니다!
괜찮으시다면 광고 차단을 풀어주세요 ㅠㅠ
이 블로그는 광고 클릭 수익으로 운영됩니다!
괜찮으시다면 광고 차단을 풀어주세요 ㅠㅠ

안녕하세요. 이번 시간에는 ES2016에서 바뀐 점에 대해 알아보겠습니다! 원래는 따로 카테고리를 하나 만들려고 했는데 ES2016은 별로 바뀐 게 없더라고요. 그래서 이번 강좌에 다 알려드릴 수 있을 것 같습니다. 정말 ES2015의 1/10도 안 되는 분량입니다. 겨우 제곱 연산자includes 메소드 두 개뿐입니다. 이외에는 사소한 패치라서 크게 신경쓰실 필요가 없습니다.

제곱 연산자

예전에는 제곱을 표현하려면 다음과 같이 했습니다. Math 객체를 사용했죠.

Math.pow(5, 3); // 125

이제는 제곱 연산자를 따로 사용할 수 있습니다.

5 ** 3; // 125

제곱에 대한 복합대입연산자도 추가되었습니다.

var i = 5;
i **= 3; // 125

배열.includes(찾을 요소, 시작 순서)

배열에 해당 요소가 있는 지 확인합니다.

[1, 2, 3].includes(1); // true
[1, 2, 3].includes(1, 1); // false

두 번째 인자는 찾기 시작하는 순서를 뜻합니다. 위의 예에서는 1이기 때문에 두 번째 요소부터 찾습니다. 배열은 0부터 시작하니까 1은 두 번째 요소입니다. 그런데 모양이 상당히 indexOf 메소드와 비슷합니다. 그냥 기존처럼 [1, 2, 3].indexOf(1) > -1 을 해도 같은 결과가 나오는데 굳이 왜 추가되었을까요?

[NaN].includes(NaN); // true
[NaN].indexOf(NaN) > -1; // false

NaN에 대한 처리가 다르다는 것 같습니다. indexOf는 NaN을 못 찾지만, includes는 찾을 수 있습니다.

위의 두 개가 끝입니다. 좀 당황스럽죠? 다음 강좌는 ES2017이 확정나면 진행하겠습니다! 들리는 바에 의하면 중대한 변화인 asyncawait이 도입되었다고 하네요. 기대가 됩니다.

투표로 게시글에 관해 피드백을 해주시면 많은 도움이 됩니다. 오류가 있다면 어떤 부분에 오류가 있는지도 알려주세요! 잘못된 정보가 퍼져나가지 않도록 도와주세요.
Copyright © 2016- 무단 전재 및 재배포 금지

댓글

2개의 댓글이 있습니다.
한 달 전
안녕하세요. 혹시 지금 이런 기술들이 어떤브라우저 까지 적용되는지 확인하려면 어디서 확인하나요..? 그리고 이런정보같은거를 공지해놓는 사이트를 알 수 있을까요..??
한 달 전
kangax.github.io caniuse.com 참조하세요
일 년 전
indexOf 와 includes 를 사용할 때 서로 같은결과를 도출할 수 있지만, 좀 더 의미가 부여된 함수를 사용함으로써, 자연어에 가깝게 만드려 하는 것을 엿볼 수 있는 점이 아닐까요?
일 년 전
네 그런 것 같아요~ 좀 더 함수형 프로그래밍 언어에 가깝게 만드려는 것도 같네요.