2012-07-03 8 views
0

자바 스크립트를 사용하여 값을 넣을 빈 배열이 있습니다. 배열의 최대 값을 찾고 다음을 사용하여 변수를 설정할 수 있습니다.자바 스크립트 배열에서 최대 값 키 찾기

Array.max = function(array){ 
    return Math.max.apply(Math, array); 
}; 

var maxX = Array.max(xArray); 

해당 값과 관련된 키를 어떻게 찾을 수 있습니까? 값이 고유한지 가정

+1

색인이란 무엇입니까? 그리고 다중 인덱스가 최대 값을 갖는다면 로직은 무엇이되어야 하는가? (예 : [1, 4, 2, 4]) – ZER0

답변

3

, 당신은 Array.indexOf을 사용할 수

var maxX = Array.max(xArray); 
var index = xArray.indexOf(maxX); 

키가 고유하지 않은 경우, index 찾은 첫 번째 요소의 키를 포함합니다. 값이 전혀 존재하지 않으면 "키"는 -1이됩니다.

+0

멋지게 작동했습니다. 감사. –

+0

Array.max()는 기존 함수조차도 아닙니다, 나는 Math.max.apply()를 의미한다고 생각합니다. – human

+0

@human Array.max는 OP가 정의한 정적 함수입니다. – Lekensteyn