Все строки всегда имеют одинаковые номера, почему? Они должны принимать случайное число, чтобы заполнить его. Кроме того, как я могу его восстановить? Однажды я увидел ответ здесь, но теперь я не могу его найти.двухмерный массив случайного генератора jQuery
var mapSizex = 5;
var mapSizey = 6;
var mapArray = [];
$(function() {
console.log("ready!");
$('#map-draw').html(drawMap());
});
function mapGenerator() {
for (i = 0; i < mapSizex; i++) {
for (x = 0; x < mapSizey; x++) {
mapArray[i, x] = getRandom(1, 5);
}
}
}
function drawMap() {
mapGenerator();
var map = '';
tileID = 0;
for (i = 0; i < mapSizex; i++) {
map = map + '<br style="clear: both;">';
for (x = 0; x < mapSizey; x++) {
map = map + '<div class="tile tileID' + tileID + '">' + mapArray[i, x] + '</div>';
tileID++;
}
}
return map;
}
function getRandom(min, max) {
var x = Math.floor((Math.random() * max) + min);
return x;
}
.tile {
float: left;
height: 20px;
width: 20px;
border: 1px solid black;
text-align: center;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="main-container">
<div id="map-container">
<div id="map-draw"></div>
</div>
</div>
Чтобы разместить его нужно добавить еще некоторое содержание, но все включено информация должна быть достаточно, чтобы найти то, что я имею в виду.
одномерные массивы don't работают как это. mapArray [i, x] недействителен, это должен быть mapArray [i] [x] – juvian
Возможный дубликат [Как создать двумерный массив в JavaScript?] (http://stackoverflow.com/questions/966225/how -can-i-create-a-two-array-array-in-javascript) – juvian
В качестве дополнительного примечания ваш синтаксис не будет вызывать ошибку, потому что это допустимое использование [comma operator] (https: // developer .mozilla.org/ru/docs/Web/JavaScript/Reference/Operators/Comma_Operator), что объясняет ваши результаты. – ASDFGerte