JavaScript: получить индекс функции в массиве функций, которые выполняются быстрее всего
Основной JavaScript (синтаксис ES6): упражнение 175 с решением
Напишите программу на JavaScript, чтобы получить индекс функции в массиве функций, которые выполняются быстрее всего.
Пример решения:
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Get the index of the function in an array of functions which executed the fastest</title>
</head>
<body>
</body>
</html>
Код JavaScript:
//#Source https://bit.ly/2neWfJ2
const mostPerformant = (fns, iterations = 10000) => {
const times = fns.map(fn => {
const before = performance.now();
for (let i = 0; i < iterations; i++) fn();
return performance.now() - before;
});
return times.indexOf(Math.min(...times));
};
console.log(mostPerformant([
() => {
// Loops through the entire array before returning `false`
[1, 2, 3, 4, 5, 6, 7, 8, 9, '10'].every(el => typeof el ==='number');
},
() => {
// Only needs to reach index `1` before returning false
[1, '2', 3, 4, 5, 6, 7, 8, 9, 10].every(el => typeof el ==='number');
}
])); // 1
Пример вывода:
1
Блок - схема:
Демонстрация в реальном времени:
См. Pen javascript-basic-упражнение- 174-1 от w3resource ( @ w3resource ) на CodePen .
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите программу на JavaScript для преобразования NodeList в массив.
Далее: Напишите программу на JavaScript, чтобы получить n минимальных элементов из предоставленного массива.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code