Чтобы получить случайный элемент из массива в TypeScript, вы можете использовать несколько методов. Вот несколько примеров:
-
Использование Math.random() и Math.floor():
function getRandomElement<T>(array: T[]): T | undefined { if (array.length === 0) { return undefined; } const randomIndex = Math.floor(Math.random() * array.length); return array[randomIndex]; } // Usage example: const myArray = [1, 2, 3, 4, 5]; const randomElement = getRandomElement(myArray); console.log(randomElement); // Output: Random element from the array -
Использование алгоритма Фишера-Йейтса:
function getRandomElement<T>(array: T[]): T | undefined { if (array.length === 0) { return undefined; } let currentIndex = array.length; let temporaryValue: T; let randomIndex: number; while (currentIndex !== 0) { randomIndex = Math.floor(Math.random() * currentIndex); currentIndex -= 1; temporaryValue = array[currentIndex]; array[currentIndex] = array[randomIndex]; array[randomIndex] = temporaryValue; } return array[0]; } // Usage example: const myArray = [1, 2, 3, 4, 5]; const randomElement = getRandomElement(myArray); console.log(randomElement); // Output: Random element from the array -
Использование библиотеки lodash:
Если у вас установлена библиотека lodash, вы можете использовать ее функциюsampleдля получения случайного элемента из массива.import { sample } from 'lodash'; const myArray = [1, 2, 3, 4, 5]; const randomElement = sample(myArray); console.log(randomElement); // Output: Random element from the array
Это несколько методов, которые можно использовать для получения случайного элемента из массива в TypeScript. Не забудьте обработать случай, когда массив пуст, чтобы избежать ошибок.