# @writetome51/get-arr-filled

> Populates and returns a new array using a provided callback function

Latest version **0.0.6** (published 2021-04-19) · MIT license · 0 weekly downloads

## Install

```sh
npm install @writetome51/get-arr-filled
pnpm add @writetome51/get-arr-filled
yarn add @writetome51/get-arr-filled
bun add @writetome51/get-arr-filled
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.6 |
| Published | 2021-04-19 |
| First published | 2020-08-11 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 0 |
| Unpacked size | 3.7 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | Steve Thompson |
| Maintainers | writetome51 |
| Keywords | array, populate, fill, callback, function, fast |

## Links

- npm: https://www.npmjs.com/package/@writetome51/get-arr-filled
- Repository: https://github.com/writetome51/get-arr-filled
- Homepage: https://github.com/writetome51/get-arr-filled#readme
- Issues: https://github.com/writetome51/get-arr-filled/issues
- npm.io page: https://npm.io/package/@writetome51/get-arr-filled

## Alternatives

- [babylon](https://npm.io/package/babylon.md) — 5.1M weekly downloads
- [csscolorparser](https://npm.io/package/csscolorparser.md) — 3.7M weekly downloads
- [expr-eval-fork](https://npm.io/package/expr-eval-fork.md) — 1.5M weekly downloads
- [@leeoniya/ufuzzy](https://npm.io/package/@leeoniya/ufuzzy.md) — 247.7K weekly downloads
- [xml-parser](https://npm.io/package/xml-parser.md) — 78.4K weekly downloads

## Recent versions

- 0.0.6 (latest) — 2021-04-19
- 0.0.5 — 2021-03-01
- 0.0.4 — 2020-11-19
- 0.0.3 — 2020-09-06
- 0.0.2 — 2020-08-12
- 0.0.1 — 2020-08-11

## README

# getArrFilled\<T\>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;length: number,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getItemValue: (index?, array?: T[]) => T<br>): T[]

Fast, efficient function for populating a new array.  
Set the `length` of the new array, and the function executes  
`array[index] = getItemValue(index, array)`  
for each `index` in `array`.


## Examples
```js
// Creates array of 5 numbers where each number is 1 higher than 
// its index:
let numbers = getArrFilled(5, (i) => i + 1);
console.log(numbers);
// [1,2,3,4,5]


// Create function that retrieves elements from array by their indexes:
export function getByIndexes(indexes, array) {
    return getArrFilled(indexes.length, (i) => array[indexes[i]]);
}

console.log(getByIndexes([1,3,5], ['a','b','c','d','e','f']));
// ['b','d','f']


// Use getArrFilled() to build the fibonacci sequence and retrieve one of 
// its numbers:
function getFibonacci(n) {
    let sequence = getArrFilled(
        n,
        // first 2 numbers in sequence will be 1
        (i, arr) => i > 1 ? arr[i-2] + arr[i-1] : 1 
    ); 
    // return the requested number:
    return sequence[n - 1];
}

console.log(getFibonacci(3));
// 2
console.log(getFibonacci(6));
// 8
```

## Installation
```bash
npm i  @writetome51/get-arr-filled
```

## Loading
```js
import { getArrFilled } from '@writetome51/get-arr-filled';
```

---
_Source: https://npm.io/package/@writetome51/get-arr-filled · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
