Случайный элемент массива (JavaScript)

Получить случайный элемент массива в JavaScript можно при помощи значения количества его элементов и функций Math.random() и Math.floor().

Случайное значение

Ниже простой пример получения случайного значения массива.

// Определяем массив var arr = ['PHP', 'JavaScript', 'Python', 'Perl', 'Ruby', 'Go', 'Java']; // Получаем случайный ключ массива var rand = Math.floor(Math.random() * arr.length); alert(arr[rand]);// Выведем, например: JavaScript

Функция arrayRandElement

Проще определить отдельную функцию arrayRandElement(arr) для получения случайного элемента массива, которая будет принимать в качестве параметра один параметр — массив, и возвращать его случайное значение.

/** * Получение случайного элемента массива * @param arr * @return {*} */ function arrayRandElement(arr) { var rand = Math.floor(Math.random() * arr.length); return arr[rand]; } // Определяем массив var arr = ['PHP', 'JavaScript', 'Python', 'Perl', 'Ruby', 'Go', 'Java']; alert(arrayRandElement(arr));// Выведет, например: Python

Свойство объекта randElement

Еще один изящный способ — повесить на Object.prototype метод randElement(), который будет возвращать случайный элемент массива.

/** * Вешаем на ассоциативный массив метод randElement * Метод возвращает случайное значение массива при это удаляя его * @returns mixed элемент массива */ Object.defineProperty( Object.prototype, 'randElement', { value: function() { var rand = Math.floor(Math.random() * this.length); return this[rand]; } } ); // Определяем массив var arr = ['PHP', 'JavaScript', 'Python', 'Perl', 'Ruby', 'Go', 'Java']; alert(arr.randElement());// Выведет, например: Go

Категории

ПрограммированиеJavaScriptМассивы в JavaScriptМассивы

Читайте также

Комментарии