본문 바로가기

전체 글

(93)
[ES6] 화살표함수 => 모양 사용. 기존 함수 표현 법 function 함수이름 (인자) { 연산식 } ex) function add(first, second) { // typeof add === 'function' return first + second; } 자바스크립트는 함수형 언어로 익명함수라고 하는 함수의 이름을 포함하지 않는 함수 선언식 표현이 존재. var add = funcntion(first, second) { // typeof add = 'function' return first + second; } 선언식 자체가 함수를 반환하게 되고, add라는 변수가 이 함수를 할당. 위 두 식은 이름을 함수 안에 포함하느냐, 반환이 된 값을 할당하느냐의 차이. 화살표 함수는 익명함수 방식을 따라 표현됨. functi..
[ES6] ES6 클래스 Class 가 존재하기 전 prototype 특수변수 사용 기존 자바스크립트 문법은 클래스가 없고 prototype이라는 특수변수를 통해 상속 기능을 사용했음. 함수를 사용해 클래스를 선언해 사용했음. 즉, 함수가 클래스의 생성자 같은 역할을 함. function Shape (x, y) { this.name = 'Shape'; this.move(x, y); } 프로토타입이라고 하는 특수변수를 사용해 각각의 메소드 이름에 함수를 정의하는 방식으로 사용했음. Shape.prototype.move = function(x, y) { this.x = x; this.y = y; }; Shape.prototype.area = fuction() { return 0; }; // new라는 생성자를 통해 선언 const s = new Shape(0, 0); console.log(..
[ES6] 배열 불변 내장 함수 const를 사용해도 배열 내장함수로 수정이 가능하다. 변경 가능한 함수들 push(...items), splice(s, c, ...items), pop(), shift() 대신 무결성 내장 함수를 사용하자. 기존 배열을 건드리지 않고 복사한 배열값을 준다. concat(...items), slice(0, s), .concat(...items. slice(s+c)), slice(0, len -1), slice(1) concat 추가해서 새 배열로 반환 const arr = []; const arr2 = arr.concat(1, 2, 3); const arr3 = arr2.concat(4) console.log(arr, arr2, arr3); -> [] [1, 2, 3] [1, 2, 3, 4] slice ..