Я долгое время скрывался в переполнении стека, но я не мог найти подходящего существующего решения ...Установите пользовательский% 1 в двумерный пустой массив, где 1 случайным образом перетасовываются?
Я изучаю JS и HTML, и я играл с 2D-массивами сделать игровое поле. До сих пор я сделал обычное количество строк/столбцов для игровой доски со всеми белыми плитами (теперь они представлены как 0).
Моя цель - использовать поле ввода для% черных плит (представлено как 1), чтобы заполнить доску (2D-массив), но черные плитки должны быть случайно распределены/перетасованы между ними.
Вот что у меня до сих пор ..
https://jsfiddle.net/5pvm4mmy/6/
function generateArray() {
var myNode = document.getElementById("table");
while (myNode.firstChild) {
myNode.removeChild(myNode.firstChild);
}
rows = $("#rows-field").val();
cols = $("#cols-field").val();
concentration = $("#concentration-field").val()
source = $("#source-field").val();
target = $("#target-field").val();
var table = document.getElementById("table");
for (var i = 0; i < rows; i++) {
var tr = document.createElement('tr');
for (var j = 0; j < cols; j++) {
var td = document.createElement('td');
if (i%2 == j%2) {
td.className = "white";
} else {
td.className = "black";
}
tr.appendChild(td);
}
table.appendChild(tr);
}
document.body.appendChild(table);
}
Заранее спасибо за любую помощь или совет.
вопрос немного неясно - где именно ваша проблема? Из того, как я понял все, что вам нужно, это использовать функцию 'Math.random()' и проверить, превышает ли значение какое-то определенное предопределенное другое значение, чтобы определить, записываете ли вы 0 или 1 в ваш массив. (Также ваш код не имеет никаких фактических ссылок на 0 или 1 вместо «черного» и «белого», что делает вопрос более запутанным). – UnholySheep
Ничего. Ваш совет Math.random() решил мою проблему. Извините за непонятный вопрос. – Jordan