2014-03-18 6 views
0

하나의 JS 변수 호출로 여러 문자열을 사용합니다 :어떻게이 작업을 수행하기 위해 노력하고있어

variable[playernumber][arrayposition] = thisvalue; 

내가 대신 자체가 배열을 포함하는 배열 개체로 "변수"를 생각해야 하는가? 아마도 뭔가 같은 :

variable[playernumber].subvariable[arrayposition] 

참고 : 플레이어의 수는 이론적으로 무한하다, 그래서 스위치를 사용할 수 없습니다.

+0

데이터를 어떻게 보이시겠습니까? 여러 선수가있는 당신의 물건은 어떻게 생겼을까요? – Mathletics

+0

데이터는 단일 값이 될 것이지만 player [0] [i], player [1]을 사용하여 player0 [i], player1 [i], player2 [i]를 호출 할 때 if/[i], player [2] [i] – DukeZhou

+0

이상 정확하지만 호출하는 플레이어 [p] [i] 여기서 p는 현재 플레이어를 나타냅니다. – DukeZhou

답변

1

당신이하려는 일이 효과가 있습니다. 아래 코드를 고려하십시오.

var array = [[]]; //declare array in array 

array[0][0] = 'hello'; 

alert(array[0][0]); //<-- prints hello 
+0

그것은 내가 얻지 못한 선언이었다. 너 락이야, user1257538. 너 락! – DukeZhou

+0

두 번째 기본 세트를 초기화하려고하면 이것이 질식하는 것 같습니다. 이 작업을 수행 할 수 없습니다 : var test = [[]]; 시험 [0] [0] = 0; test [1] [0] = 1; alert (test [0] [0] + ""+ test [1] [0]); – DukeZhou

+0

위의 문제는 test [1]이 정의되지 않았다는 것입니다. 원래 선언을 var test = [[], []]로 변경할 수 있습니다. 또는 라인 테스트 [1] = [];을 추가 할 수 있습니다. – lyoung

1

두 가지 방법 모두 적당합니다. 그러나 2 차원 배열이 될 것이라고 제안한 첫 번째 접근 방식만으로도 사용자에게 충분하면 간단합니다. 당신과 같이 선언 할 수 :

var variable = []; 

는 다음과 같이 해당 배열에 값의 배열을 추가, playernumber을 가정하는 정수 값을 가지는 변수 :

var someValues = [8, 17, -6, 34]; 
variable[playernumber] = someValues; 

그런 다음이 줄 수를 표시 것은 - 경고 상자에 6 :

alert(variable[playernumber][2]); 

방법 variable으로는 변수에 대한 끔찍한 이름입니다. 실제로 사용하지 마십시오.

+0

언급 한대로 초기 접근법은 당면 과제에 충분하지만 다른 방법을 설명해 주셔서 감사합니다. 당신도 락, dgvid! – DukeZhou

+0

PS "변수"에 대해 선호하는 용어는 무엇입니까? "객체 배열"이 최적일까요? (사실 질문을하는 법을 이해하는 데 실제로는 시간이 걸렸습니다.) – DukeZhou

+0

데이터 유형이 아닌 표현식이나 포함 된 데이터의 이름 변수. 예를 들어 플레이어 점수 배열 배열이있는 경우 playerScores라는 이름을 지정합니다. 데이터 유형을 설명하십시오 (예 : 주석 배열을 사용하여 숫자 배열 배열). – dgvid

관련 문제