ES6의 새로운 기능
const and let
Arrow functions(화살표 함수)
Template Literals(템플릿 리터럴)
Default parameters(기본 매개 변수)
Array and object destructing(배열 및 객체 구조분해할당)
Import and export(가져오기 및 내보내기)
Promises(프로미스)
Rest parameter and Spread operator(나머지 매개 변수 및 확산 연산자)
Classes(클래스)
const myFunc = (name, age) => {
return `Hello ${name}, 이제 너는 ${age}살이 되었구나!`;
};
console.log(myFunc('수리', 4));
// Hello 수리, 이제 너는 4살이 되었구나!
-매개 변수를 쓰지 않은 경우 매개 변수가 이미 기본값에 정의되어 있으므로 정의되지 않은 오류가 반환되지 않는다.
const myFunc = (name, age) => {
return `Hello ${name}, 이제 너는 ${age}살이 되었구나!`;
};
console.log(myFunc('수리'));
// Hello 수리, 이제 너는 undefined살이 되었구나!
age를 정의하지 않은 경우 이렇게 undefined로 출력이 되지만,
const myFunc = (name, age=10) => {
return `Hello ${name}, 이제 너는 ${age}살이 되었구나!`;
};
console.log(myFunc('수리'));
// Hello 수리, 이제 너는 10살이 되었구나!
이렇게 Default parameter를 정해놓은 경우엔 값을 주지 않아도 미리 정한 값을 출력하게 된다.
코딩을 시작한지 얼마되지 않았기 때문에 내가 당연한 듯 쓰는 Javascript 문법은 모두 ES6문법이었다. 문법이 이렇게 바뀐 이유가 있고, 현재는 편리하다고 느끼지만 또 발전하는 때가 올 것이다. 여기에만 머물지 말고 흐름에 맞게 공부해야겠다😀
참고