생성자 썸네일형 리스트형 [JS] new 키워드를 사용하지 않고 객체 생성하기 "자바스크립트는 왜 그럴까?"를 읽던 중, new 키워드를 사용하지 말라는 말이 나왔다. 왜 우리는 new 키워드를 사용하면 안되며, 또 어떻게 new 키워드를 사용하지 않을 수 있을까? (아래의 velog는 읽기 전 읽으면 좋을, 생성자가 new 키워드에 대해 정리된 글이고 그 아래의 webclub 티스토리는 이 글을 쓰기 위해 참고한 글임을 밝힙니다.) JS 생성자와 new 키워드 객체란 서로 연관된 변수와 함수를 그룹핑한 그릇이라고 할 수 있다. 그리고 그 객체 내의 변수를 프로퍼티(property), 함수를 메소드(method)라고 부른다. 그리고 이렇게 생성된 객체는 일종의 독립 velog.io 자바스크립트 생성자 패턴 - new를 강제하는 패턴 javaScript 생성자 함수의 핵심 패턴 자바.. 더보기 [JS] 7장. 자바스크립트 상속 패턴 (1) 기본 패턴 기본 패턴: 생성자의 정의를 안해서 문제 kid.say를 하면 Adam이 나옴 (2) 생성자 빌려쓰기 생성자 빌려쓰기: 프로토타입 연결이 안됨 function Child(name) { Parent.apply(this, arguments) } class Child extends Parent { constructor() { super(); } } // 와 유사 // kid.say를 못함 (3) 생성자 빌려쓰고 프로토타입 지정 생성자 빌려쓰고 프로토타입 지정: 괜찮지만 Parent 너무 많이 호출 function Child(name) { Parent.apply(this.arguments); } Child.prototype = new Parent(); 부모가 계속 new가 됨 (4) 프로토타입.. 더보기 9장. 프로퍼티 1. 프로퍼티를 사용하는 이유 프로퍼티를 사용하면 은닉성과 편의성을 모두 잡을 수 있습니다. class 클래스이름 { 데이터형식 필드이름; 접근한정자 데이터 형식 프로퍼티이름 { get { return 필드이름; } set { 필드이름 = value; } } } 이렇게 사용한다. 2. 메소드보다 프로퍼티 class MyClass { private int myField; public int GetMyField() { return MyField; } public void SetMyField( int NewValue ) { myField = NewValue; } } MyClass obj = new MyClass(); obj.SetMyField(3); Console.WriteLine( obj.getMyField.. 더보기 7장. 클래스: this 키워드, this() 생성자, 접근 한정자, static 변수, 구조체 주의) 생성자나 종료자 개념 등 기본적인 것들은 생략하였습니다. 클래스가 뭐야? 클래스란 int, string과 같이 하나의 형식이라고 생각하면 된다. 인스턴스는 클래스라는 붕어빵 틀로 찍어낸 각각의 붕어빵이라고 생각하면 쉽다. 생성자 class Cat { // 생성자 자동 생성 } 생성자를 따로 명시하지 않을 경우 기본적으로 생성된다. 정적 필드와 메소드 선언, static using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace TestConsoleApp_4._19 { class Cat { public static int Speed =.. 더보기 이전 1 다음