2016-08-17 2 views
0

변수를 선언하기 위해 for 루프를 사용할 수 있습니까? 비슷하게 하나씩 변수를 선언하는 것이 영리하지 않기 때문에. DATA1, DATA2 및 DATA3, 나는 일반적으로 다음과 같이 선언합니다 : 예를 들어자바 스크립트 : for 루프로 변수를 생성하십시오.

내가 좋아하는 변수를 원하는 경우

var data1 = ""; 

var data2 = ""; 

var data3 = ""; 

을 그리고 아래는 우리가 실제 코드에서 할 수있는 기대하는 것입니다.

for 루프를 사용하고 "i"를 사용하여 각 변수에 번호를 할당하십시오.

for(var i = 0; i < 3 ;i++){ 

    var data+i = ""; 

} 

할 수 있습니까? 위의 코드가 올바른 방법이 아니라 단지 개념이라고 가정합니다.

+4

그런 식으로 변수를 생성해서는 안됩니다. 특히 어레이라는 달콤한 데이터 구조가있을 때. –

+0

배열로 어떻게해야합니까? 왜냐하면 내가 얼마나 많은 데이터 x를 가지고 있는지 예측할 수 없으므로 – anson920520

+1

'var data = [];'는 수백만 개의 데이터를 줄 것이다. [x] - [documentation] (https://developer.mozilla.org/en-US/) docs/Web/JavaScript/Reference/Global_Objects/Array) – mplungjan

답변

2

당신은 객체 또는 글로벌 변수를 정의 할 수 있습니다 .

var variables = {}; 
 

 
for (var i = 0; i < 3; i++) { 
 

 
    variables['data' + i] = i; 
 

 
} 
 

 
console.log(variables); 
 

 
// you can use it like variables.data0 
 

 

 
// by the way you can define global variables as you want 
 
// but note that this pollutes the global space 
 

 
for (var i = 0; i < 3; i++) { 
 
    window['data' + i] = i; 
 
} 
 
// so you can use it like 
 

 
console.log(window.data0, ' or ', data0)

+0

루프를 호출 할 때 사용할 수 있습니까? – anson920520

+0

은 variables.data [i] – anson920520

+0

@ anson920520과 유사합니다. 그냥 시도 해 봐. 작동하면 .. 상관 없어. – DININDU

1

javascript가 동적으로 입력되었으므로 이와 같은 작업을 수행 할 수 있습니다. JavaScript를 사용하면 키를 통해 변수에 액세스 할 수 있습니다.

var baseVariable = {}; 
for(var i = 0; i < 3; i++){ 
    baseVariable["data" + i] = "ValueForData" + i; 
} 

당신은보다 baseVariabel을 반복하여 아주 쉽게 이러한 변수에 액세스 할 수 있습니다, 또는 지금 당신이 경우 당신은처럼 정확한 금액을 전화도 할 수

baseVariable.data1 
-1

당신은 문자열에서 코드를 평가하는 평가 기능을 사용할 수 있습니다. 예 :

var a = 2; eval('alert(a)'); 

과제 체인을 살펴보십시오. 아마도 적합 할 것입니다.

var a = b = c = d = e = f = g = ""; 

하지만이 방법은 좋지 않습니다. 귀하의 질문에 대한 의견을 더 나은 방법은 데이터를 저장하는 배열이나 개체를 사용하여 언급했다.

관련 문제