Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- fontend
- 홈캠 360
- 홈캠앱
- removeButton
- 함수를 반복적으로 호출하려면
- JavaScript
- 수료후기
- 오즈코딩스쿨
- Array.filter
- 신생아수면홈캠
- 실시간 모니터링
- 실손보험
- miniproject
- Challenge
- 빌트인함수
- 홈캠 야간모드
- 개발부트캠프
- preventDefault()
- web
- 시즌드라마
- 고화질홈캠
- 견뎌야하나요
- 댕냥이 cctv
- 가성비홈캠
- JSON.stingify
- 초격자캠프
- TroubleShooting Guide
- VanillaJS
- 중첩배열
- 문제해결가이드
Archives
- Today
- Total
Nomard Life
[javascript] Constructor 객체를 만드는 생성자 본문
728x90
객체란?
자바스크립트 명령문으로, 어떤 처리를 지시하고 하는 대상
자바스크립트는 프로그래밍 언어로써, 소프트웨어적 대상(웹브라우저, 웹 요소, 웹 스타일 등)에게 명령을 내리는 역할을 수행한다.
명령을 내리고픈 대상에게 명령을 전달하면 다음 절차대로 작업이 이루어진다.
입력 → 처리 → 출력
객체에 내릴 수 있는 명령
Object.data // 객체가 가지고 있는 데이터(정보)를 가리켜 '속성'이라 한다. (숫자, 문자 등 다양한 데이터 사용)
Object.function() // 객체가 가지고 있는 기능을 '메소드'라고 한다. (기능을 수행함) 괄호 필수!!
자바스크립트 코드 내에서 객체는 '값 또는 기능을 가지고 있는 데이터'
원하는 값이나 기능으로 구성된 객체를 직접 만들 수 있다.
생성자 Constructor
객체를 생성할 때 사용하는 함수.
일반함수와 생성자 함수 사이에 문법적 차이는 존재하지 않는다.
즉, 함수는 생성자 역할을 할 수 있다. 다만 생성자함수는 객체생성을 목적으로 한다.
⇢ 자바스크립트가 제공하지 않는 유형의 데이터를 창조!!!
function Dog(){ // 관례 : 생성자 함수를 구분하기 위해 첫글자 대문자(파스칼표기법사용)
this.name = "콩이";
this.breed = "시츄";
}
const myDog = new Dog(); // 실제 객체가 생성되기 위해서는 new 연산을 통해 객체 반환해야함
console.log(myDog.name) // 콩이
console.log(myDog.breed) // 시츄
생성자 함수 정의 시 this 키워드는 객체 그 자신의 의미한다.
this를 이용해 속성이나 메소드를 추가할 수 있다.
생성자 함수는 객체를 만드는 설계도 역할을 한다. 함수 하나로 여러개의 객체 생성도 가능
매개변수를 정의하여 인자를 전달한다.
function Dog(eachName, eachBreed){
this.name = eachName;
this.breed = eachBreed;
this.info = () => {console.log(`우리 ${name}는 ${breed}종입니다.`)}
}
const one = new Dog("바둑이", "진돗개");
const two = new Dog("하나코", "시바견");
const three = new Dog("마르코", "셰퍼드");
three.info() // 우리 마르코는 셰퍼드종입니다. (생성자 내부 함수 호출)
728x90
'Develop' 카테고리의 다른 글
[javascript] 타이머메소드 (0) | 2024.04.11 |
---|---|
[javascript] 빌트인생성자 Date (0) | 2024.04.11 |
[javascipt] 배열 메소드 (0) | 2024.04.08 |
[javascript] Local Storage 로컬 스토리지 (0) | 2024.04.08 |
[javascript] JSON 빌트인 객체 (0) | 2024.04.08 |