
Product
Introducing Socket Fix for Safe, Automated Dependency Upgrades
Automatically fix and test dependency updates with socket fix—a new CLI tool that turns CVE alerts into safe, automated upgrades.
Lazy iteration in JavaScript.
Based heavily on the Rust iterator trait.
Lazyer allows for lazy iteration.
It can be used for working with finite sequences:
const lazy = require('lazyer');
lazy.from(people)
.filter(person => person.age >= 65)
.map(person => `${person.firstName} ${person.lastName}`)
.map(name => name.toUpperCase())
.forEach(name => console.log(name));
And infinite sequences:
const lazy = require('lazyer');
lazy.range()
.scan(([a, b]) => [b, a + b], [0, 1])
.map(([a]) => a)
.take(10)
.collect();
→ [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
Works with anything iterable:
const lazy = require('lazyer');
const string = 'Hello World!';
const set = new Set(string);
lazy.range(0)
.zip(set)
.collectMap()
→ Map {
0 => 'H',
1 => 'e',
2 => 'l',
3 => 'o',
4 => ' ',
5 => 'W',
6 => 'r',
7 => 'd',
8 => '!'
}
And does a bunch of useful things:
const lazy = require('lazyer');
const longest = lazy.from(listOfListOfNodes)
.flat()
.flatMap(node => node.children)
.max(node => node.data.length);
Functions that create a lazy iterator.
from
of
range
repeat
repeatWith
iterate
Methods that adapt the iterator.
A consumer needs to be called before any of these will be executed.
stepBy
skip
take
skipWhile
takeWhile
chunk
enumerate
concat
cycle
map
filter
scan
zip
flat
flatMap
join
joinWith
each
Methods that consume the iterator.
These methods start the iteration.
next
peek
at
count
last
forEach
reduce
sum
product
find
findIndex
includes
every
some
max
min
maxBy
minBy
collect
partition
unzip
group
categorize
clone
cloneMany
See the documented source code.
And for examples, see the test file.
FAQs
Lazy iteration in JavaScript.
We found that lazyer demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Automatically fix and test dependency updates with socket fix—a new CLI tool that turns CVE alerts into safe, automated upgrades.
Security News
CISA denies CVE funding issues amid backlash over a new CVE foundation formed by board members, raising concerns about transparency and program governance.
Product
We’re excited to announce a powerful new capability in Socket: historical data and enhanced analytics.