그냥 정보 차원에서 쓰는 거고 크로뮴 계열이나 파이어폭스 퀀텀에서는 SyntaxError가 떠서 이제는 쓰면 안 돼
1. 한 줄 함수
ES6에서 중괄호가 없는 화살표 함수랑 비슷한데 이름을 가질 수 있고 람다가 아닌 정의 형태로 쓸 수 있어
[1, 3, 5, 6, 7, 9].find(function(item) item % 2 == 0);
반환값: 6
표준 문법으로 재작성:
ES5: [1, 3, 5, 6, 7, 9].find(function(item) { return item % 2 == 0; });
ES6: [1, 3, 5, 6, 7, 9].find(item => item % 2 == 0);
function f(x) x * 2;
console.log(f(2));
출력값: 4
표준 문법으로 재작성:
function f(x) { return x * 2; }
또는
var f = x => x * 2;
2. 조건부 캐치
try {
// 오류가 나는 코드
} catch(e if e instanceof ReferenceError) {
alert('ReferenceError 발생');
} catch(e if e instanceof TypeError) {
alert('TypeError 발생');
}
표준 문법으로 재작성
try {
// 오류가 나는 코드
} catch(e) {
if(e instanceof ReferenceError)
alert('ReferenceError 발생');
else if(e instanceof TypeError)
alert('TypeError 발생');
}
오... 조건부 캐치 맛도리네