제이스크립트 ES6
- 이전 페이지 JS 2009 (ES5)
- 다음 페이지 JS 2016
ECMAScript 6은 무엇인가요?
ECMAScript 6은 ES6과 ECMAScript 2015로도 알려져 있습니다.
불과 몇몇 사람들은 이를 JavaScript 6으로 부르고 있습니다.
이 장에서는 ES6의 몇 가지 새로운 기능을 소개합니다.
- JavaScript let
- JavaScript const
- 승수 (**)
- 기본 값
- Array.find()
- Array.findIndex()
ES6(ECMAScript 2015)의 브라우저 지원
Safari 10과 Edge 14은 ES6을 완전히 지원하는 첫 번째 브라우저입니다:
Chrome 58 | Edge 14 | Firefox 54 | Safari 10 | Opera 55 |
Jan 2017 | Aug 2016 | Mar 2017 | Jul 2016 | Aug 2018 |
JavaScript let
let 문은 블록 스코프에서 변수를 선언할 수 있도록 합니다.
예제
var x = 10; // 여기서 x는 10입니다 { let x = 2; // 여기서 x는 2입니다 } // 여기서 x는 10입니다
JavaScript const
const
문장은 상수(상수 값을 가진 JavaScript 변수)를 선언할 수 있도록 합니다.
고정 값은 let
변수는 값을 변경할 수 없습니다.
예제
var x = 10; // 여기서 x는 10입니다 { const x = 2; // 여기서 x는 2입니다 } // 여기서 x는 10입니다
우리의 JavaScript Let / Const 장에서 JavaScript Let / Const에 대해 더 읽어보세요 let
와 const
의 내용입니다.
지수 연산자
승수 연산자(**
를 첫 번째 연산자가 두 번째 연산자의 권을 받습니다。
예제
var x = 5; var z = x ** 2; // 결과는 25입니다
x ** y
의 결과는 Math.pow(x,y)
동일합니다:
예제
var x = 5; var z = Math.pow(x,2); // 결과는 25입니다
기본 값
ES6
함수 매개변수에 기본값을 허용합니다.
예제
function myFunction(x, y = 10) { // y는 전달되지 않거나 undefined인 경우 10입니다 return x + y; } myFunction(5); // 15을 반환합니다
Array.find()
find()
메서드는 테스트 함수를 통해 첫 번째 배열 요소의 값을 반환합니다.
이 예제는 첫 번째로 18보다 큰 요소(의 값)을 찾아(반환)합니다:
예제
var numbers = [4, 9, 16, 25, 29]; var first = numbers.find(myFunction); function myFunction(value, index, array) { return value > 18; }
이 함수는 3개의 파라미터를 받습니다:
- 항목 값
- 항목 인덱스
- 배열 자체
Array.findIndex()
findIndex()
메서드는 테스트 함수를 통해 첫 번째 배열 요소의 인덱스를 반환합니다.
이 예제는 18보다 큰 첫 번째 요소의 인덱스를 결정합니다:
예제
var numbers = [4, 9, 16, 25, 29]; var first = numbers.findIndex(myFunction); function myFunction(value, index, array) { return value > 18; }
이 함수는 3개의 파라미터를 받습니다:
- 항목 값
- 항목 인덱스
- 배열 자체
새로운 수학 속성
ES6는 Number 객체에 다음 속성을 추가했습니다:
- EPSILON
- MIN_SAFE_INTEGER
- MAX_SAFE_INTEGER
예제
var x = Number.EPSILON;
예제
var x = Number.MIN_SAFE_INTEGER;
예제
var x = Number.MAX_SAFE_INTEGER;
새로운 수학 메서드
ES6는 Number 객체에 2개의 새로운 메서드를 추가했습니다:
- Number.isInteger()
- Number.isSafeInteger()
Number.isInteger() 메서드
파라미터가 정수라면 Number.isInteger()
메서드가 반환 true
.
예제
Number.isInteger(10); // 반환 true Number.isInteger(10.5); // 반환 false
Number.isSafeInteger() 메서드
안전한 정수는 더블 프리미스数值로 정확하게 표현할 수 있는 정수입니다。
파라미터가 안전한 정수라면 Number.isSafeInteger()
메서드가 반환 true
.
예제
Number.isSafeInteger(10); // 반환 true Number.isSafeInteger(12345678901234567890); // 반환 false
안전한 정수는 -(253 - 1)에서 +(253 - 1)까지의 모든 정수를 의미합니다。
이것은 안전합니다:9007199254740991. 이것은 불안전합니다:9007199254740992.
새로운 전역 메서드
ES6는 2개의 새로운 전역 수학 메서드를 추가했습니다:
- isFinite()
- isNaN()
isFinite() 메서드
파라미터가 Infinity
또는 NaN
이 경우 전체 isFinite()
메서드는 false를 반환합니다。
그렇지 않으면 true를 반환합니다:
예제
isFinite(10/0); // 반환 false isFinite(10/1); // 반환 true
isNaN() 메서드
파라미터는 NaN
이 경우 전체 isNaN()
메서드가 반환 true
이렇지 않으면 false
:
예제
isNaN("Hello"); // true를 반환
화살표 함수 (Arrow Function)
화살표 함수는 함수 표현식을 작성하는 데 간단한 문법을 사용할 수 있게 합니다.
당신은 필요하지 않습니다 function
키워드,return
키워드 및괄호.
예제
// ES5 var x = function(x, y) { return x * y; } // ES6 const x = (x, y) => x * y;
화살표 함수는 자신의 this
.객체 메서드.
화살표 함수는 提升되지 않습니다. 사용할 때앞합니다.
정의 const
사용하는 것보다 var
보다 안전합니다. 함수 표현식은 항상 상수 값입니다.
함수가 단일 문장일 때만 생략할 수 있습니다 return
키워드와 괄호. 따라서 그들을 유지하는 것이 좋은 습관일 수 있습니다:
예제
const x = (x, y) => { return x * y };
- 이전 페이지 JS 2009 (ES5)
- 다음 페이지 JS 2016