Files
30-seconds-of-code/javascript/snippets/times.md
2023-05-01 22:35:56 +03:00

26 lines
569 B
Markdown

---
title: Iterate n times
type: snippet
tags: [function]
cover: lake-loop
dateModified: 2020-10-20T11:21:07+03:00
---
Iterates over a callback `n` times.
- Use `Function.prototype.call()` to call `fn` `n` times or until it returns `false`.
- Omit the last argument, `context`, to use an `undefined` object (or the global object in non-strict mode).
```js
const times = (n, fn, context = undefined) => {
let i = 0;
while (fn.call(context, i) !== false && ++i < n) {}
};
```
```js
var output = '';
times(5, i => (output += i));
console.log(output); // 01234
```