2017-04-02 1 views
0
var myarr = new Array([001,"Ravi",800000],[002,"John",700000],[003,"Vishal","500000"], 
         [004,"Michel",600000],[005,"Stella",700000]); 

myarr에서 하나의 배열을 표시하는 방법은 무엇입니까? 예를 들어 입력란에 002을 입력하면 다음과 같이 표시됩니다. 002,"John",700000주어진 값을 기준으로 중첩 배열을 찾으십시오.

+0

원본 데이터 구조를지도로 변경할 수 있습니까? 이제부터는 전체 배열을 반복하고 항목이 일치하는지 확인해야 할 것입니다. –

+1

내가보기에 문제는 각 배열의 첫 번째 요소가 001, 002, 003, 004, 005가 아닌 1,2,3,4,5가 될 것이기 때문입니다. 왜냐하면 숫자가 있기 때문에 검색 결과가 사람에게 덜 분명해지기 때문입니다. 어떻게 자바 스크립트 작동의 기본 –

답변

2

데이터 구조를지도와 비슷한 것으로 변경하는 것이 좋습니다. 그런 다음 숫자 (또는 문자열 표현)를 키로 사용하여 각 개인의 데이터를 인쇄 할 수 있습니다. 이런 식으로 뭔가 : 여기

var data = {}; 
data["001"] = ["Ravi", 800000]; 
data["002"] = ["John", 700000]; 
data["003"] = ["Vishal", 500000]; 
data["004"] = ["Michel", 600000]; 
data["005"] = ["Stella", 700000]; 

var input = "002"; 
console.log(data[input]); 

데모 :

Rextester

+0

'print()'몰라? 왜 비표준 함수를 도입합니까? 'console.log()'는 [임베디드, 실행 가능한 스 니펫] (https://stackoverflow.blog/2014/09/16/introducing-runnable-javascript-css-and-html-code-snippets/)과 함께 잘 작동합니다. 당신의 대답에 ... – nnnnnn

-1

이 배열의 내부 배열의 고전적인 예이다.

전체 배열 002, "John", 700000을 표시하려면 외부 배열에서 해당 배열의 색인을 가져옵니다.

<html> 
<body> 

<p id="demo"></p> 

<script> 
var myarr = new Array([001,"Ravi",800000],[002,"John",700000],[003,"Vishal","500000"],[004,"Michel",600000],[005,"Stella",700000]); 

//This will display your entire second array. 
document.getElementById("demo").innerHTML = myarr[1]; 

</script> 

</body> 
</html> 

당신은 조회가 당신의 ID가 열쇠가 될 것이며, 전체 개체가 값이됩니다있는 키 - 값의 데이터 구조를 시도합니다.

var obj = {key1 : value1, key2 : value2};

+0

* "당신이 조회를 원한다면"* - 어떤 질문이 요구 되는가, 그래서 대답의 초점이되어서는 안되는가? – nnnnnn

관련 문제