728x90

This 3

자바스크립트 - new 연산자와 생성자 함수

객체 생성을 생성자 함수를 이용해 생성할 수 있습니다. function User(name) { this.name = name; this.isAdmin = false; } let user = new User("보라"); 먼저 this = {}로 빈객체가 생성되며 함수 본문을 실행 해 프로퍼티를 추가합니다. 그런 다음 this를 반환하여 객체를 반환합니다. 생성자를 이용하면 프로퍼티의 내용이 다른 동일한 객체를 쉽게 생성할 수 있습니다. => 재사용 가능 모든 함수들은 new 연산자를 이용해 생성자 함수가 될 수 있으며 첫글자가 대문자인 함수는 new 연산자를 이용해 실행해야 한다는 약속이 있습니다. let user = new function() { this.name = "John"; this.isAdmin..

자바스크립트 - 객체의 메서드와 this

let user = { name: "John", age: 30 }; user.sayHi = function() { alert("안녕하세요!"); }; user.sayHi(); // 안녕하세요! // 함수 선언 function sayHi() { alert("안녕하세요!"); }; // 선언된 함수를 메서드로 등록 user.sayHi = sayHi; 객체는 메서드를 함수 만들듯이 생성할 수 있으며 . 연산자를 통해 사용할 수 있습니다. 함수를 생성 후 메서드로 등록해서 사용할 수도 있습니다. 객체 리터럴 안에 메서드를 생성할 경우 단축할 수 있으며 객체 상속에 따라 조금 차이가 존재합니다. // 아래 두 객체는 동일하게 동작 user = { sayHi: function() { alert("Hello"); }..

오버로딩과 오버라이딩

오버로딩 - 하나의 클래스에 동일 이름값의 메서드와 생성자들이 존재 하는 것을 말합니다. - 이때 각 구분은 이름값 + 매개변수 개수 + 매개변수 타입 + 매개변수 순서 등으로 구성된 값이 사용되고 이것이 실질적인 식별자 역할을 합니다. 오버라이딩(재정의) - 부모 클래스의 멤버 혹은 인터페이스의 멤버를 자식 또는 구현 클래스에서 재정의 하는 것을 말합니다. - 자식 객체의 참조 값을 부모 타입으로 업 캐스팅 후 부모 메서드를 호출하면 오버라이딩 된 자식 메서드가 동적 바인딩(런타임시 결정)되어 수행이 되는데 이를 통해 다형성을 구현합니다. this와 super #this - 현재 객체를 참조할 수 있습니다. - 람다의 경우 람다 객체를 사용하는 객체의 값을 참조합니다. - 주로 매개변수와 필드의 이름이..