누구나 다차원 입력 배열로 JavaScript 샘플 / 예제를 제공 할 수 있습니까? 아직 JavaScript를 처음 사용하기 때문에 도움이 되길 바랍니다.
2 행과 2 열을 입력 할 때와 같이 2 행의 입력과 2 열의 입력이 출력됩니다.
이처럼 :
[input][input]
[input][input]
답변
var numeric = [
['input1','input2'],
['input3','input4']
];
numeric[0][0] == 'input1';
numeric[0][1] == 'input2';
numeric[1][0] == 'input3';
numeric[1][1] == 'input4';
var obj = {
'row1' : {
'key1' : 'input1',
'key2' : 'input2'
},
'row2' : {
'key3' : 'input3',
'key4' : 'input4'
}
};
obj.row1.key1 == 'input1';
obj.row1.key2 == 'input2';
obj.row2.key1 == 'input3';
obj.row2.key2 == 'input4';
var mixed = {
'row1' : ['input1', 'inpu2'],
'row2' : ['input3', 'input4']
};
mixed.row1[0] == 'input1';
mixed.row1[1] == 'input2';
mixed.row2[0] == 'input3';
mixed.row2[1] == 'input4';
그리고 DOM 요소를 저장하려면 다음을 수행하십시오.
var inputs = [
[
document.createElement('input'),
document.createElement('input')
],
[
document.createElement('input'),
document.createElement('input')
]
];
inputs[0][0].id = 'input1';
inputs[0][1].id = 'input2';
inputs[1][0].id = 'input3';
inputs[1][1].id = 'input4';
요소를 부착 할 때까지 위의 유용성이 확실하지 않습니다. 아래는 당신이 찾고있는 것입니다.
<input text="text" id="input5"/>
<input text="text" id="input6"/>
<input text="text" id="input7"/>
<input text="text" id="input8"/>
var els = [
[
document.getElementById('input5'),
document.getElementById('input6')
],
[
document.getElementById('input7'),
document.getElementById('input8')
]
];
els[0][0].id = 'input5';
els[0][1].id = 'input6';
els[1][0].id = 'input7';
els[1][1].id = 'input8';
아니면, 아마도 :
<input text="text" value="4" id="input5"/>
<input text="text" value="4" id="input6"/>
<br/>
<input text="text" value="2" id="input7"/>
<input text="text" value="4" id="input8"/>
var els = [
[
document.getElementById('input5'),
document.getElementById('input6')
],
[
document.getElementById('input7'),
document.getElementById('input8')
]
];
var result = [];
for (var i = 0; i < els.length; i++) {
result[result.length] = els[0][i].value - els[1][i].value;
}
다음을 제공합니다.
[2, 0]
콘솔에서. 당신이 그것을 텍스트로 출력하고 싶다면, 당신은 result.join(' ');
할 수 있습니다 2 0
.
편집하다
실무 시연 :
<input text="text" value="4" id="input5"/>
<input text="text" value="4" id="input6"/>
<br/>
<input text="text" value="2" id="input7"/>
<input text="text" value="4" id="input8"/>
<br/>
<input type="button" value="Add" onclick="add()"/>
// This would just go in a script block in the head
function add() {
var els = [
[
document.getElementById('input5'),
document.getElementById('input6')
],
[
document.getElementById('input7'),
document.getElementById('input8')
]
];
var result = [];
for (var i = 0; i < els.length; i++) {
result[result.length] = parseInt(els[0][i].value) - parseInt(els[1][i].value);
}
alert(result.join(' '));
}
답변
JavaScript를 사용하여 데이터 구조 및 알고리즘 에서 인용 한 인용문
좋은 부분 (O’Reilly, p. 64). Crockford는 행과 열 수를 설정하고 각 값을 함수에 전달 된 값으로 설정하는 함수로 JavaScript 배열 객체를 확장합니다. 그의 정의는 다음과 같습니다.
Array.matrix = function(numrows, numcols, initial) {
var arr = [];
for (var i = 0; i < numrows; ++i) {
var columns = [];
for (var j = 0; j < numcols; ++j) {
columns[j] = initial;
}
arr[i] = columns;
}
return arr;
}
정의를 테스트하는 코드는 다음과 같습니다.
var nums = Array.matrix(5,5,0);
print(nums[1][1]); // displays 0
var names = Array.matrix(3,3,"");
names[1][2] = "Joe";
print(names[1][2]); // display "Joe"
또한 2 차원 배열을 만들어 한 줄에 일련의 값으로 초기화 할 수도 있습니다.
var grades = [[89, 77, 78],[76, 82, 81],[91, 94, 89]];
print(grades[2][2]); // displays 89
답변
값을 할당하지 않고 선언합니다.
2 차원 …
var arrayName = new Array(new Array());
3 차원 …
var arrayName = new Array(new Array(new Array()));
답변
나는 이것이 고대인 것을 알고 있지만 어떨까요?
4×4 예 (actually 4x<anything>)
:
var matrix = [ [],[],[],[] ]
다음으로 채울 수 있습니다.
for (var i=0; i<4; i++) {
for (var j=0; j<4; j++) {
matrix[i][j] = i*j;
}
}
답변
매우 간단
var states = [,];
states[0,0] = tName;
states[0,1] = '1';
states[1,0] = tName;
states[2,1] = '1';
. . .
states[n,0] = tName;
states[n,1] = '1';
답변
function Array2D(x, y)
{
var array2D = new Array(x);
for(var i = 0; i < array2D.length; i++)
{
array2D[i] = new Array(y);
}
return array2D;
}
var myNewArray = Array2D(4, 9);
myNewArray[3][5] = "booger";
답변
다음 코드가 요구 사항에 적합하기를 바랍니다.
var row= 20;
var column= 10;
var f = new Array();
for (i=0;i<row;i++) {
f[i]=new Array();
for (j=0;j<column;j++) {
f[i][j]=0;
}
}
