//////
Search
😎

getOwnPropertyDescriptor, getOwnPropertyDescriptors, getOwnPropertyNames, getPrototypeOf()

Created
2023/05/25 07:54
Tags
Date
2023/05/25

Object.getOwnPropertyDescriptor()

구문

Object.getOwnPropertyDescriptor(obj, prop)

설명

obj객체의 prop 속성에 대한 설명자를 반환해요

예제

const case1 = Object.defineProperties({},{ 'name' : { value : '홍길동', writable : true, enumerable : true, }, 'age' : { value : 100, writable : false, enumerable : false } }) //case1 객체의 name 속성을 찍어보자 console.log(Object.getOwnPropertyDescriptor(case1, 'name')) configurable : false enumerable : true value : "홍길동" writable : true //case1 객체의 age 속성을 찍어보자 console.log(Object.getOwnPropertyDescriptor(case1, 'age')) configurable : false enumerable : false value : 100 writable : false
Plain Text
복사
참고로 defineProperties()메서드를 사용하여 속성을 정의할 경우 configurable, enumerable, writable 기본값은 false입니다.

Object.getOwnPropertyDescriptors()

구문

Object.getOwnPropertyDescriptors(obj)

설명

매개변수로 들어온 obj객체의 모든 속성들의 설명자를 반환해요

예제

const case1 = Object.defineProperties({},{ 'name' : { value : '홍길동', writable : true, enumerable : true, }, 'age' : { value : 100, writable : false, enumerable : false } }) // case1 객체의 설명자가 궁금해요 console.log(Object.getOwnPropertyDescriptors(case1)) age : configurable : false enumerable : false value : 100 writable : false name : configurable : false enumerable : true value : "홍길동" writable : true
Plain Text
복사

Object.getOwnPropertyNames()

구문

Object.getOwnPropertyNames(obj)

설명

매개변수의 속성들을 배열에 담아 반환시켜줍니다.

예제

//case1를 만들어볼께요 const case1 = { a : 1, b : 2, c : 3} //객체에 어떤 속성이 있는지 궁금해요 console.log(Object.getOwnPropertyNames(case1)) 결과값 => [ 'a', 'b', 'c' ] //case2를 만들어 볼께요 const case2 = { name : '홍길동', age : 100 } //콘솔찍어 볼께요 console.log(Object.getOwnPropertyNames(case2)) 결과값 => [ 'name', 'age' ]
Plain Text
복사

Object.getPrototypeOf()

구문

Object.getPrototypeOf(obj)

설명

매개변수의 프로토타입(상속받은 객체)을 반환해요.

예제

//객체를 하나 만들어 볼께요 let obj1 = { name : '홀깅돌' , age : 100 }; //obj1을 상속받는 객체를 하나 만들어 볼께요 let obj2 = Object.create(obj1) // Object.getPrototypeOf(obj2) === obj1 결과값 => true
Plain Text
복사