2017-05-01 1 views
-1

다음은 샘플 JSON 객체입니다. 경도 값에 을 기반으로 한 'title' 값을 얻고 싶습니다. 나는 제목을 얻기 위해 여러 (20-30) 경도, 그래서 나는 그 많은 시간을 통해 루프를 원하지 않는다 :다른 필드 데이터를 기반으로 배열에서 필드 값 가져 오기

{ 
    items:[ 
     { 
      longitude:-72.897668, 
      latitude:40.453576, 
      title:52 street 
     }, 
     { 
      longitude:-71.897668, 
      latitude:41.453576, 
      title:5th Ave 
     } 
    ] 
} 

는 사람이 어떻게-루프를 사용하지 않고 값을 얻는 저를 제안 할 수 있습니다.

+0

배열에서 무언가를 찾고 싶다면'Array # find' 사용을 고려 했습니까? –

답변

0

linke array.filter()을 시도해 보셨습니까?

function filterByLongitude(element) { 
    var expected = -72.897668 
    return element.longitude === expected; 
} 

var items = [{ 
    longitude:-72.897668, 
    latitude:40.453576, 
    title:'52 street' 
    }, { 
    longitude:-71.897668, 
    latitude:41.453576, 
    title: '5th Ave' 
    }]; 

var match = items.filter(filterByLongitude); 
console.log(match[0].title); // 52 street 
+0

안녕하세요, 빠른 답변을 보내 주셔서 감사합니다. 나는 당신의 코드를 로컬에서 잘 작동 해 보았습니다. 그러나 오라클 MCS (내부적으로 서비스를 개발하기 위해 노드 js를 사용)로 이동했을 때 "oracleMobile.rest 콜백의 사용자 정의 코드 문제 : TypeError : 정의되지 않은"필터를 호출 할 수 없습니다. 그리고 나는 또한 필터를 시도했지만 운이 없었다. –

+0

a)'items'가 정의되었고 b)'items' 변수가'array' 타입인지 확인하십시오 (그렇지 않으면 프로토 타입에 필터 메소드가 없습니다). –

+0

@BhargaviChodisetty, 해결 했습니까? –

관련 문제