Files
rspade_system/node_modules/collect.js/docs/api/flatten.md
root f6fac6c4bc Fix bin/publish: copy docs.dist from project root
Fix bin/publish: use correct .env path for rspade_system
Fix bin/publish script: prevent grep exit code 1 from terminating script

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-21 02:08:33 +00:00

49 lines
1.1 KiB
Markdown
Executable File

# `flatten()`
The flatten method flattens a multi-dimensional collection into a single dimension:
```js
const collection = collect({
club: 'Liverpool',
players: ['Salah', 'Firmino', 'Núñez'],
});
const flattened = collection.flatten();
flattened.all();
// ['Liverpool', 'Salah', 'Firmino', 'Núñez'];
```
You may optionally pass the function a "depth" argument:
```js
const collection = collect({
Apple: [
{
name: 'iPhone 6S',
brand: 'Apple',
},
],
Samsung: [
{
name: 'Galaxy S7',
brand: 'Samsung',
},
],
});
const flattened = collection.flatten(1);
flattened.all();
// [
// { name: 'iPhone 6S', brand: 'Apple' },
// { name: 'Galaxy S7', brand: 'Samsung' },
// ]
```
In this example, calling flatten without providing the depth would have also flattened the nested arrays, resulting in `['iPhone 6S', 'Apple', 'Galaxy S7', 'Samsung']`. Providing a depth allows you to restrict the levels of nested arrays that will be flattened.
[View source on GitHub](https://github.com/ecrmnn/collect.js/blob/master/src/methods/flatten.js)