двухмерный массив(поле)
Здравствуйте, нашел вот такой код :
for (var i=0; i<9; i++) {
document.getElementById('game').innerHTML+='<div class="block"</div>';
}
Он вставляет девять блоков в 'game'. Хочу сделать, чтобы двухмерный массив вставлял также эти блоки, допустим три на три, ну как в крестики-нолики, пишу это:
function pole() {
for (var i=0; i<3; i++) {
kvadratiki[i]=[];
for (var j=0; j<i; j++) {
kvadratiki[i][j] = document.getElementById('game').innerHTML+='<div class="block"></div>';
};
};
};
он рисует только три блока, а если делаю j<3, тогда всё нормально, вопрос почему нельзя привязать j к i |
Цитата:
|
Цитата:
если я правильно понял, при написании заместо 'j++' - '++j' должно наращиваться до 3, но все равно 2 там. если ставлю (var j=0; j<(i+1); j++) - получается j=3, но тогда выводит всего 6 блоков вместо 9 :write: |
Цитата:
Что прописать во внутреннем цикле j<3; религия не позволяет и надо извращаться или что? |
Цитата:
Цитата:
|
Цитата:
<div id="as"></div>
<script>
for (var i=0; i<3; i++) {
for (var j=0; j<i; j++) {
document.getElementById('as').innerHTML += 'j = ' + j + ', i = ' + i + ', j < i = ' + (j<i) + '<br>';
}
}
</script>
|
Цитата:
|
<div id="as"></div>
<script>
function pole(side) {
for (var i=0; i<side; i++) {
for (var j=0; j<side; j++) {
document.getElementById('as').innerHTML += 'j = ' + j + ', i = ' + i + ', j < i = ' + (j<side) + '<br>';
}
}
}
pole(3);
</script>
Иначе от функции никакой пользы. |
shoopik,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
div.block {
height: 50px;
width: 50px;
background-color: #FFFF00;
margin: 2px;
}
#game{
display: flex;
background-color: #0000FF;
width: 162px;
}
</style>
</head>
<body>
<div id="game"></div>
<script>
function pole(rows, cols, el) {
el = document.getElementById(el)
for (; rows--;) {
var div = document.createElement("div");
for (var j=0; j<cols; j++) {
var d = div.cloneNode();
d.classList.add("block");
div.appendChild(d);
};
el.appendChild(div)
};
};
pole(3, 3, "game")
</script>
</body>
</html>
|
Цитата:
|
| Часовой пояс GMT +3, время: 21:00. |