ES6 정리
http://es6-features.org/ 한국어로 다시 정리한 내용입니다.
Constants (상수)
새 콘텐츠를 다시 할당 할 수 없는 변수
주의 : 할당 된 내용이 아닌 변수 자체만 변경할 수 없습니다 (예를 들어 내용이 객체 인 경우 객체 자체가 여전히 변경 될 수 있음을 의미합니다).
const MY_OBJECT = {'key': 'value'};
// 객체 변수 MY_OBJECT를 다시 재할당(overwrite) 하는 것은 에러를 만듭니다.
MY_OBJECT = {'OTHER_KEY': 'value'}; // Uncaught TypeError: Assignment to constant variable.
// 하지만 객체의 keys는 overwrite 될 수 있습니다.
// 다음은 에러없이 잘 작동합니다.
MY_OBJECT.key = 'otherValue';
// 객체의 내용의 변경조차 막기 위해서는 Object.freeze()를 사용하면 됩니다
// const로 선언한 배열도 마찬가지로 push를 사용해 내부를 변경할 수 있습니다.
const MY_ARRAY = [];
MY_ARRAY.push('A'); // ["A"]
// 하지만 배열 변수 MY_ARRAY에 새로운 배열을 할당하는 것은 에러를 만듭니다.
MY_ARRAY = ['B']; // Uncaught TypeError: Assignment to constant variable.
Scoping (범위)
Block-Scoped Variables , function
호이스팅이 없는 블록 범위 변수, 함수
for (let i = 0; i < a.length; i++) {
let x = a[i]
}
Extended Parameter Handling
Default Parameter Values
디폴트 파라미터 값을 지정할 수 있습니다.
function f (x, y = 7, z = 42) {
return x + y + z
}
Rest Parameter
나머지 arguments를 하나의 파라미터로 넘겨줄 수 있습니다
function f (x, y, ...a) {
return (x + y) * a.length
}
f(1, 2, "hello", true, 7) === 9
Spread Operator
배열이나 문자열 같은 반복가능한 요소들을 펼칠 수(spreading) 있습니다
var params = [ "hello", true, 7 ]
var other = [ 1, 2, ...params ] // [ 1, 2, "hello", true, 7 ]
var str = "foo"
var chars = [ ...str ] // [ "f", "o", "o" ]
Extended Literals
Binary & Octal Literal
0b 2진법
0o 8진법을 표시할 수 있습니다
0b111110111 === 503
0o767 === 503
....계속
Author And Source
이 문제에 관하여(ES6 정리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@sa02045/ES6-정리
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Author And Source
이 문제에 관하여(ES6 정리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sa02045/ES6-정리저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)