[JavaScript] ES6 함수의 추가 기능

유영준·2022년 11월 14일
0
post-thumbnail

자바스크립트의 기본 개념동작 원리를 정확히 이해하는 것이 중요!


개인적인 공부를 하면서 중요한 내용을 정리한 형식이기 때문에 오류가 있을 수 있습니다.
피드백 주시면 정말 감사하겠습니다.


ES6 사양에서 메서드는 메서드 축약 표현으로 정의된 함수만을 의미한다

화살표 함수
1. 화살표 함수는 인스턴스를 생성할 수 없는 non-constructor다
2. 중복된 매개변수 이름을 선언할 수 없다
3. 화살표 함수는 함수 자체의 this. arguments, super, new.target 바인딩을 갖지 않는다

const multiply = (x, y) => x * y;
multiply(2, 3); // -> 6
class Prefixer {
  constructor(prefix) {
    this.prefix = prefix;
  }

  add(arr) {
    return arr.map(item => this.prefix + item);
  }
}

const prefixer = new Prefixer('-webkit-');
console.log(prefixer.add(['transition', 'user-select']));
// ['-webkit-transition', '-webkit-user-select']

Rest 파라미터는 함수에 전달된 인수들의 목록을 배열로 전달받는다

function foo(param, ...rest) {
  console.log(param); // 1
  console.log(rest);  // [ 2, 3, 4, 5 ]
}

foo(1, 2, 3, 4, 5);

function bar(param1, param2, ...rest) {
  console.log(param1); // 1
  console.log(param2); // 2
  console.log(rest);   // [ 3, 4, 5 ]
}

bar(1, 2, 3, 4, 5);

매개변수 기본값

function sum(x = 0, y = 0) {
  return x + y;
}

console.log(sum(1, 2)); // 3
console.log(sum(1));    // 1
profile
프론트엔드 개발자 준비 중

0개의 댓글