2016-08-16 2 views
0

각 개체의 속성이 일부 있습니다. 키와 값을 모든 객체에서 하나의 배열로 배열로 반환하는 방법은 무엇입니까?개체의 키와 값의 속성을 반환하십시오.

지금 난 단지지고있어 값

이 객체의 배열 반환

columnWidth.map(function(e) {return e.width;}); 
:

var columnWidth = $('#grid').data('gridData').columns; 

이 각 개체의 속성이라는 폭의 값의 배열을 반환을

이제 무엇을 되 찾을 수 있습니까?

[30, 50, 80, 80, 90, 125] 

나는 돌아 싶어 무엇 :

["Width":30, "Width":50, "Width":80, "Width":80, "Width":90, "Width":125] 
+4

생성하려는 형식이 유효한 자바 스크립트가 아닙니다. 배열에 명명 된 항목을 가질 수 없다. –

답변

4

그럼 그냥 그 개체를 반환 :

columnWidth.map(function(e) {return { width: e.width }; }); 

그것은 당신에게 보이는 배열을주지를

[ { width: 30 }, { width: 50 }, ... ] 

같은 (사용 속성 이름을 대문자로 바꾸려면 Width: e.width을 입력하십시오.)

질문에 설명 된 형식은 의미가 없습니다. 배열 인덱스는 숫자이므로 JavaScript 데이터 구조는 없습니다. 다른 구조를 원할 경우 .map() 또는 .reduce()을 사용하여 구조를 수행 할 수 있습니다.

이 솔루션은 객체의 배열을 제공하며 각 객체는 "width"라는 단일 속성을가집니다. 그건 당신이 진술 한 목표에 가장 가까운 근사치처럼 보입니다.

+2

'return { "Width": e.width}; }'그리고 반환은 객체의 배열이 될 것입니다. :) – bipen

+2

@bipen 오, 속성 이름을 대문자로 입력해야합니다. 그러나 따옴표로 묶을 필요는 없습니다. – Pointy

관련 문제