[TIL] Object.values()

양주영·2022년 1월 18일
0

Q. 이 배열 내 객체에서 values의 평균을 내고 싶은 경우

"max_return": [
    { "20년": "17.00" },
    { "15년": "16.00" },
    { "10년": "17.00" },
    { "5년": "16.00" },
    { "1년": "17.00" }
  ],

A. Object.values()

Object.values() 메소드는 전달된 파라미터 객체가 가지는 (열거 가능한) 속성의 값들로 이루어진 배열을 리턴한다.

var obj = { foo: 'bar', baz: 42 };
console.log(Object.values(obj)); // ['bar', 42]

  • 유사 배열 (숫자를 속성으로 사용하는 객체)
var obj = { 0: 'a', 1: 'b', 2: 'c' };
console.log(Object.values(obj)); // ['a', 'b', 'c']

  • 유사 배열의 경의 속성으로 사용한 숫자의 크기 순으로 정렬되어 반환된다.
var an_obj = { 100: 'a', 2: 'b', 7: 'c' };
console.log(Object.values(an_obj)); // ['b', 'c', 'a']

  • getFoo는 열거 가능한 속성이 아니라서 배열에 포함되지 않는다.
var my_obj = Object.create({}, { getFoo: { value: function() { return this.foo; } } });
my_obj.foo = 'bar';
console.log(Object.values(my_obj)); // ['bar']

  • 객체가 아닌 경우에는 객체로 강제로 변환되어 적용된다.
console.log(Object.values('foo')); // ['f', 'o', 'o']

참고 > https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Object/values

profile
뚜벅뚜벅

0개의 댓글