JavaScript ES6 문법 - default parameter
default parameter아래 함수처럼 파라미터 개수에 맞지 않게 함수를 실행시킨다면 오류를 발생시킵니다.1234const sum = function(x,y){ return x+y;}sum(); // NaN ES6에서는 파라미터에 기본 값을 할당해줄 수 있습니다.1234const sum2 = function(x=5,y=10)&
default parameter아래 함수처럼 파라미터 개수에 맞지 않게 함수를 실행시킨다면 오류를 발생시킵니다.1234const sum = function(x,y){ return x+y;}sum(); // NaN ES6에서는 파라미터에 기본 값을 할당해줄 수 있습니다.1234const sum2 = function(x=5,y=10)&
spread operator(...)copy목적으로 씁니다.length를 갖고 있는, 즉 순회를 할 수 있는 대상들(배열, 문자열)에 적용가능합니다. 12345678const defaultColors = ['red', 'green'];const userFavoriteColors =['yellow', &
rest parameter(나머지 파라미터 ...)일정하지 않은 갯수의 파라미터를 넘길 때 유용합니다. 1234567function addNum(...numbers) { return numbers.reduce((sum, number) => { return sum + number; }, 0);}addNum(
Class 클래스자바스크립트 ES5 문법으로 class를 만들기 위해서 prototype 상속을 이용하는 방법을 사용하였습니다. 해당 포스팅 바로가기ES6 문법에서는 class 문법을 지원함으로서 이를 좀 더 쉽게 만들게 해줍니다. ES5 와 ES6 비교1_ ES5123456789101112131415// Person 클래스. 생성자 함수var Perso
Template StringsES5에서 문자열을 변수, 함수와 함께 쓰고자 할 때 +기호를 씁니다.12345678910let firstName = 'John';let lastName = 'Smith';const yearOfBirth = 1990;function calcAge(year) { return 2017
Blocks and IIFEsES5 이하에서는 var 변수 선언을 하면 전역변수가 되기 때문에 전역을 오염시키지 않기 위해 IIFE패턴을 썼습니다.1234// ES5(function(){ var a = 5;})(); 그러나 ES6에서 제공하는 let, const 선언은 지역변수이므로, 블록으로 묶어주기만 하면 IIFE패턴을 쓰지 않고도
Arrow functions(애로우 펑션, 화살표 함수 표현식)화살표 함수 표현식(arrow function expression)은 함수 표현식(function expression)에 비해 구문이 짧으며(예제 1.)this, arguments, super 또는 new.target을 자체 바인딩하지 않습니다(예제 2.). 메소드가 아닌 함수에 가장 적합하며
ES6 변수, 상수 선언 키워드let : 정의된 블록내에서만 존재하는 변수 선언 (지역 변수)const : 위와 동일, 상수(변하지 않는 값) 선언 var : ES6문법 이전부터 사용하던 변수 선언 (전역 변수) 1234var x = 'global'; // 전역 변수let y = 'global'; // 지역 변수cons