deep-for-each

WebJar for deep-for-each

License

License

MIT
GroupId

GroupId

org.webjars.npm
ArtifactId

ArtifactId

deep-for-each
Last Version

Last Version

1.0.6
Release Date

Release Date

Type

Type

jar
Description

Description

deep-for-each
WebJar for deep-for-each
Project URL

Project URL

http://webjars.org
Source Code Management

Source Code Management

https://github.com/moxystudio/js-deep-for-each

Download deep-for-each

How to add to project

<!-- https://jarcasting.com/artifacts/org.webjars.npm/deep-for-each/ -->
<dependency>
    <groupId>org.webjars.npm</groupId>
    <artifactId>deep-for-each</artifactId>
    <version>1.0.6</version>
</dependency>
// https://jarcasting.com/artifacts/org.webjars.npm/deep-for-each/
implementation 'org.webjars.npm:deep-for-each:1.0.6'
// https://jarcasting.com/artifacts/org.webjars.npm/deep-for-each/
implementation ("org.webjars.npm:deep-for-each:1.0.6")
'org.webjars.npm:deep-for-each:jar:1.0.6'
<dependency org="org.webjars.npm" name="deep-for-each" rev="1.0.6">
  <artifact name="deep-for-each" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.webjars.npm', module='deep-for-each', version='1.0.6')
)
libraryDependencies += "org.webjars.npm" % "deep-for-each" % "1.0.6"
[org.webjars.npm/deep-for-each "1.0.6"]

Dependencies

compile (1)

Group / Artifact Type Version
org.webjars.npm : is-plain-object jar [2.0.1,3)

Project Modules

There are no modules declared in this project.

deep-for-each

NPM version Downloads Build Status Coverage Status Dependency status Dev Dependency status

Recursively iterates over arrays and objects. The iteration is made using a deep-first algorithm.

Installation

$ npm install deep-for-each

This library is written in modern JavaScript and is published in both CommonJS and ES module transpiled variants. If you target older browsers please make sure to transpile accordingly.

Usage

import deepForEach from 'deep-for-each';

deepForEach({
    prop1: 'foo',
    prop2: ['foo', 'bar'],
    prop3: ['foo', 'foo'],
    prop4: {
        prop5: 'foo',
        prop6: 'bar',
    },
}, (value, key, subject, path) => {
    // `value` is the current property value
    // `key` is the current property name
    // `subject` is either an array or an object
    // `path` is the iteration path, e.g.: 'prop2[0]' and 'prop4.prop5'

    console.log(`${path}:`, value);
});

Running the example above will print:

prop1: foo
prop2: [ 'foo', 'bar' ]
prop2[0]: foo
prop2[1]: bar
prop3: [ 'foo', 'foo' ]
prop3[0]: foo
prop3[1]: foo
prop4: { prop5: 'foo', prop6: 'bar' }
prop4.prop5: foo
prop4.prop6: bar

Tests

$ npm test
$ npm test -- --watch # during development

License

Released under the MIT License.

org.webjars.npm

MOXY

MOXY is a software and design studio seeking a balance between impact, excellence and pragmatism. We call it Engineered Design.

Versions

Version
1.0.6