Заполнить массив случайными числами
Сразу оговорюсь, что я совсем начинающий. Нашёл несколько реализаций, но подходящей не обнаружил.
Задача такая: заполнить массив случайными числами вида Math.round( Math.random() * 100 ). Вот, наваял такое, но не работает :(
var arr2 = [];
for ( i = 0; i < 20; i++ ) {
var a = Math.round( Math.random() * 100 );
var arr2 = arr2.push(a);
document.write( '<br>' + arr2);
}
Выводит единицу. Я понимаю это так: объявляем массив, потом перебором 20 раз пушим случайное число в массив. Но не работает так :( Кто-нибудь может просветить неразумного? Заранее благодарю! |
Цитата:
|
LEXAdesigns,
Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
Извиняюсь, код поправил
|
Цитата:
Спасибо огромное! Вот так записал:
var arr2 = [];
for ( i = 0; i < 20; i++ ) {
arr2.push( Math.round( Math.random() * 100 ));
} document.write( '<br>' + arr2 );
|
Цитата:
var arr2 = [], i; или так for ( var i = 0; i < 20; i++ ) |
Цитата:
А, ну да, переменную объявить :) Спасибо! :thanks: |
Хочу ещё одно узнать.
Из массива выше надо было найти минимальное и максимальное значение. Смастерил, но опять не работало - там, где Math.max(arr) — выдавало NaN, хотя в массиве номера, и если ввести значения в скобках явно, то всё работало. Нашёл здесь на форуме запись вида Math.max(...arr) — и всё заработало! Вопрос: что значит это троеточие?
var arr = [];
for ( var i = 0; i < 20; i++ ) {
arr.push(Math.round( Math.random() * 100 ));
}
document.write( '<br>' + arr + '<br>' );
document.write( '<br>' + Math.max(...arr) + '<br>' );
document.write( '<br>' + Math.min(...arr) + '<br>' );
Спасибо! |
Цитата:
|
Цитата:
|
| Часовой пояс GMT +3, время: 15:10. |