JS 객체생성 방법

fe_sw·2022년 8월 31일
0

Javascript

목록 보기
16/22
post-thumbnail

자바스크립트에서 원시 타입을 제외한 모든 데이터 타입(객체, 함수, 배열, 정규표현식 등)은 객체다.

객체가 보유한 값을 '프로퍼티'라고 하며, 객체가 보유한 함수를 '메서드'라고 한다.
프로퍼티는 키와 값으로 구성된다.

new Object() 객체 생성자

//Object()를 이용해서 foo 빈 객체 생성
var pserson = new Object();

// foo 객체 프로퍼티 생성 
pserson.name = 'seok';
pserson.age = 10;
pserson.gender = 'male';

console.log(typepf foo); // (출력값) object
console.log(foo); // (출력값) { name: 'seok', age: 10, gender: male}


// String객체 생성하기
var strObj = new String('hello');
console.log(strObj); //[String: 'hello']


// Array(배열)객체 생성하기
var arrObj = new Array([1, 2, 3]);
console.log(arrObj); //[ [ 1, 2, 3 ] ]
출처: https://curryyou.tistory.com/189 [카레유:티스토리]

Object.create()

 Object.create(프로토타입)  : 프로토타입 상속을 통해 객체를 만드는 방식

// 부모 객체 생성
var parent = {a:10, b:20};

// 자식 객체 생성(부모의 프로퍼티를 상속 받음)
var child = Object.create(parent);
console.log(child.a);  // 10

객체 리터럴

var person = {
	name : 'seok',
	age : 10,
	gender: 'male',
	func1: function () {
		console.log('Hello js')
	}
}

생성자 함수

 // Person() 생성자 함수
var Person = function(name) {
		this.name = name;
}

// foo 객체 생성
 var foo = new Person('seok');
console.log(foo.name) // seok

클래스

class Person {
  constructor(name, age) { // 인자를 받아 할당한다.
    this.name = name; 
    this.age = age;
  }

  func1() {
    console.log(`${this.name}: hello!`);
  }
  
  get personName() { 
  return this.name;
}
  set probName(value) { 
    this.name = value; 
  }
}

const mike = new Person('seok', 10);
console.log(mike.name);
console.log(mike.age);

객체 프로퍼티,메서드 접근방법

객체.프로퍼티 , 객체['프로퍼티']로 접근가능하다

var person = {
	name : 'seok',
	age : 10,
	gender: 'male',
	func1: function () {
		console.log('Hello js')
	}
}

person.name;	
person.age;	
person.func1();
person['name'];	
person['age'];	
person['func1']();

0개의 댓글