При создании программ на JavaScript может понадобиться получить случайное значение из массива. А так как JavaScript позволяет нам расширять встроенные типы своими , то это еще можно реализовать достаточно элегантно - через добавление требуемого метода в прототип массива (Array.prototype) .

Получаем случайное значение из массива в JavaScript

При создании программ на JavaScript может понадобиться получить случайное значение из массива. А так как JavaScript позволяет нам расширять встроенные типы своими, то это еще можно реализовать достаточно элегантно - через добавление требуемого метода в прототип массива (Array.prototype).

И вызов такого метода ничем не будет отличаться от вызова любого другого встроенного метода.

Код очень простой:

// проверяем есть ли уже такой метод в прототипе
// иначе можем получить непредвиденное поведение
if( typeof(Array.prototype.getRandom ) !== 'function' {
    
    // добавляем метод в прототип массива
    Array.prototype.getRandom = function() {
    
        // получаем случайное число в диапазоне [ 0,длина_массива - 1]
        let rnd = Math.floor(Math.random() * this.length)
        
        // возвращаем значение для указанного индекса
        return this[rnd]
    }; 
}

Используем так:

// массив имен
let names = [ 'Михаил', 'Сергей', 'Максим' ];

// получаем случайное имя
alert(names.getRandom())