Registry / serialization / amp-each

amp-each

JSON →
library1.0.1jsnpmunverified

amp-each is a lightweight JavaScript utility module, part of the ampersand.js project, designed to provide an iteration function similar to `Array.prototype.forEach` or `_.each` from Lodash. It allows iterating over both arrays and objects, applying a callback function to each element or property. The ampersand.js ecosystem, from which amp-each originates, was popular around 2015-2017 as a modular alternative to larger frameworks like Backbone.js, favoring CommonJS modules for client-side applications. However, the project appears to be largely unmaintained, with its core modules having last seen significant updates many years ago (e.g., ampersand-state last published 8 years ago from October 2017). This package, at version 1.0.1, should be considered abandoned, lacking recent updates, active development, or a clear release cadence. Its primary differentiator was being part of a "non-frameworky" collection of modules, offering granular control over application structure.

npm install amp-each
INSTALL
IMPORT
SIG · AMP-EACH
A
amp-each
serializationjavascriptv1.0.1
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

each
const each = require('amp-each');
import each from 'amp-each';
This package is a CommonJS module and does not natively support ES module import syntax. Use `require()` in Node.js or a bundler for browser usage.

Demonstrates how to use `amp-each` to iterate over arrays and objects, applying a callback function to each element or property, and passing a context object.

const each = require('amp-each'); // Example 1: Iterating over an array const numbers = [1, 2, 3, 4, 5]; const doubledNumbers = []; each(numbers, function (num, index) { doubledNumbers.push(num * 2); console.log(`Array item at index ${index}: ${num}`); }); console.log('Doubled Numbers:', doubledNumbers); // Example 2: Iterating over an object const user = { name: 'Alice', age: 30, city: 'New York' }; console.log('\nUser details:'); each(user, function (value, key) { console.log(`${key}: ${value}`); }); // Example 3: Using 'this' context (if the function supports it, which 'amp-each' typically would) const contextObject = { multiplier: 10 }; const multipliedNumbers = []; each(numbers, function (num) { multipliedNumbers.push(num * this.multiplier); }, contextObject); console.log('Multiplied by context:', multipliedNumbers);
Debug
Known issues
breakingThe entire ampersand.js project, including `amp-each`, appears to be abandoned. It has not seen updates in many years and lacks active maintenance, posing risks for security and compatibility with modern environments.
fix
Consider replacing with native JavaScript methods (e.g., `Array.prototype.forEach`, `Object.keys().forEach`) or a actively maintained utility library like Lodash (`_.each`).
affects: >=1.0.1
gotchaThis package is exclusively a CommonJS (CJS) module. Attempting to use ES module `import` syntax will result in runtime errors in environments that don't specifically transpile CJS to ESM.
fix
Ensure you use `const each = require('amp-each');` for Node.js environments or configure your bundler (e.g., Webpack, Rollup) to handle CJS modules if targeting browsers.
affects: >=1.0.1
gotchaModern JavaScript environments provide native iteration alternatives (e.g., `Array.prototype.forEach`, `Object.keys().forEach`, `for...of` loops) that offer similar functionality, often with better performance and native support, making this package largely redundant in current development.
fix
Prefer native JavaScript iteration methods for better maintainability, performance, and reduced bundle size.
affects: >=1.0.1
gotchaThe package does not ship with TypeScript definitions. Using it in a TypeScript project will require manual type declarations or using `any`, leading to a loss of type safety.
fix
If you must use this library, install `@types/amp-each` if available (unlikely due to abandonment) or create a custom declaration file (e.g., `amp-each.d.ts`) to provide type information.
affects: >=1.0.1
Errors
Common errors & fixes
ReferenceError: require is not defined
Attempting to use `require('amp-each')` in a JavaScript file that is being interpreted as an ES module (e.g., due to `"type": "module"` in `package.json` or a `.mjs` extension).
fix
Change the file to a CommonJS module (e.g., rename to `.cjs`, remove `"type": "module"` from `package.json`, or configure your build system). Alternatively, use a dynamic import (`import('amp-each').then(mod => mod)`), though this package is not designed for it.
TypeError: (0 , amp_each_1.default) is not a function
Incorrect ES module import (`import each from 'amp-each'`) for a CommonJS module that exports a single function directly (not as a default object property).
fix
If transpilation is in place, try `import * as each from 'amp-each';` and then use `each.default(collection, fn)`. However, the recommended fix is to revert to `const each = require('amp-each');`.
TypeError: each is not a function
The `amp-each` module was imported incorrectly, or the variable `each` was not assigned the exported function. This can happen with incorrect `require()` syntax or failed ES module imports.
fix
Ensure the import is `const each = require('amp-each');` for CommonJS, or verify your bundler's configuration if using ES modules in a browser context.
Upgrade
Version history
1.0.1latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
32 hits · last 30 days
node
28
OpenAI (training)
1
Resources
amp-each — npm install amp-each · libregistry