replit 문제를 풀면서 다루고싶은 내용이 있어 간략하게 정리해보려 한다. 자바스크립트는 문법의 보완들이 필요하면서 많은 버전별로 문법을 확장하고 변하기도 한다. ES가 명세를 확정해왔다고 한다 우선 ES6가 무엇인지 간단하게 적어보자면
ES는 ECMA Script의 줄임말입니다. ECMA Script는 JavaScript를 표준화 시키려고 탄생했습니다.
즉, ECMA Script는 JavaScript를 표준화시키고, 규격화하기 위해 만들어진 것입니다.
자 그러면 ES5랑 ES6로 달라진 표현을 설명해보자
►이름 없는 함수의 기본적인 표현
//ES5
function() {}
//ES6
() => {}
►이름이 있는 함수
//ES5
function(getName) {}
//ES6
const getName = () => {}
호출할때는 둘다 같다
►인자를 받는다면
//ES5
const getName = function(name) {}
//ES6
const getName = (name) => {}
const getName = name => {}
인자가 하나일 때는 소괄호 생략 가능, 두개일때는 생략 불가
► 리턴하는 함수
//ES5
function hi(text){
text += '하세요';
return text;
}
//ES6
const hi = text => {
text += '하세요';
return text
};
►실행내용 없이 리턴한다면
//ES5
function getName(name){
return name;
}
//ES6
const getName = name => {return name};
const getName = name => name;
};
중괄호와 리턴문이 생략될 경우, 화살표 오른쪽에는 리턴될 값만 써야한다. 다른 코드가 들어가면 ❌