POTATO THAT WANT TO BE HUMAN

[JavaScript] 객체의 길이 본문

FRONTEND/JavaScript

[JavaScript] 객체의 길이

녜힝 2023. 3. 9. 13:37
반응형

자바스크립트에서 배열의 길이를 알아내는 것은 아주 간단하다.

array.length 를 사용해 배열의 길이를 구할 수 있다.

const arr = [1, 2, 3, 4, 5];

console.log(arr.length);	// arr 배열의 길이는 5

 

그렇다면 객체의 길이는 어떻게 알 수 있을까?

우선 객체는 다음과 같이 생겼다.

const obj = {
    name: "dress",
    color: "green",
    price: "10,000"
}

객체의 길이를 알고자 배열에서 했던 것처럼 obj.length 를 하면 될까?

 

아니지 .. 그게 아니지 ..

 

 

객체는 배열과 다르게 keyvalue로 나뉜다.

 

위 예시로 보자면 name, color, price가 key가 되고  "dress", "green", "10,000"이 value가 된다.

 

그렇다면 key의 갯수, value의 갯수는 obj의 길이와 동일하다 !

 

 

그럼 이제 남은 건 하나 key와 value의 갯수를 어떻게 알지?

 

Object의 메서드 중 Object.keys(obj)Object.value(obj) 를 이용하면 된다.

 

위 예시에 접목시켜보자.

const obj = {
	name: "dress",
    color: "green",
    price: "10,000"
}

console.log(Object.keys(obj));	//Array ["name", "color", "price"]
console.log(Object.values(obj));  //Array ["dress", "green", "10,000"]

콘솔에 찍어보면 다음과 같이 key만 담겨진 배열, value만 담겨진 배열로 리턴됨을 알 수 있다. 

그렇다면! 

객체의 길이는 key 배열의 길이, value 배열의 길이와 동일하다.

 

console.log(Object.keys(obj).length);  //3
console.log(Object.values(obj).length);  //3

// 객체의 길이는 3

 

🧐 결론은?

객체의 길이 = key 값 배열의 길이 = value 값 배열의 길이

객체의 길이 = Object.keys(obj).length = Object.values(obj).length

반응형
Comments