Simplify

Object.keys() 객체의 프로퍼티 목록 가져오기 How to list up all properties in an Object 본문

Web & Server/javascript tips

Object.keys() 객체의 프로퍼티 목록 가져오기 How to list up all properties in an Object

Simplify - Jonghun 2017. 2. 26. 15:50

javascript 를 사용하다 보면, 로직 구현상에 필요해서 property 목록을 가져와야 하거나, 혹은 확인 차 목록을 찍어봐야 하는 경우도 있습니다. 물론 console.log() 함수에 그냥 객체를 통째로 넣으면 객체를 그 자체로.. 구체화해서 보여주기 때문에 더욱 효율적이라고 할 수도 있어요.. 하지만 객체가 너무 뚱뚱하거나, 혹은 특정 값 하나만 확인하고 싶은 경우에.. 혹은 prototyping 해서 그 안에 특정 함수를 확인해야 하는 경우.. 유용한 함수가 있습니다. 바로 Object.keys() 라는 함수입니다.


1
2
3
4
5
6
7
8
9
10
var obj = {
    a : 'a',
    b : 'b',
    c :  123
}
 
for(var key in Object.keys(obj)){
    console.log(key);
    console.log(obj[key]);
}
cs


위 예제에서와 같이, Object.keys() 함수를 활용하면, Object 에 속한 key를 배열 형태로 가져올 수 있고, 이를 for문으로 돌면서 하나하나 확인할 수 있습니다. 별로 필요없어 보이지만, 가끔 유독 확인해야 하는 경우가 있는 경우에 유용하게 확인 가능한 소스입니다. 


(2018. 09. 18 수정)

위의 의도대로라면 아래오 같이 그냥 for문으로 돌리는 것이 맞습니다. (지적해 주신 회원님(댓글) 감사드립니다) Object.keys 함수는 위와 같이 for문을 돌리는 경우에 각 속성값에 해당하는 index가 나타나게 됩니다. 


1
2
3
4
5
6
7
8
9
10
11
var obj = {
    a : 'a',
    b : 'b',
    c :  123
}
 
for(var key in obj){
    console.log(key);
    console.log(obj[key]);
}
 
cs




Comments