universe:recursive-iterator

v2.0.0Published 8 years ago

This package has not had recent updates. Please investigate it's current state before committing to using it in your project.

Recursive Iterator

About

Iterates javascript object recursively. Works in ES6 environments iteration protocols. Compatible with for...of cycle. This meteor package is simple wrapper of [nervgh/recursive-iterator] (https://github.com/nervgh/recursive-iterator)

Instalation

    meteor add universe:recursive-iterator

This package need to work one of universe:ecmascript or universe:modules

Getting started

Quick overview (es6)

1import RecursiveIterator from '{universe:recursive-iterator}';
2
3var iterator = new RecursiveIterator(
4    root /*{Object|Array}*/,
5    [bypassMode=0] /*{Number}*/,
6    [ignoreCircular=false] /*{Boolean}*/,
7    [maxDeep=100] /*{Number}*/
8);
9
10var {value, done} = iterator.next();
11var {parent, node, key, path, deep} = value;
12
13// parent is parent node
14// node is current node
15// key is key of node
16// path is path to node
17// deep is current deep

Example (es6)

1import RecursiveIterator from '{universe:recursive-iterator}';
2var root = {
3    object: {
4        number: 1
5    },
6    string: 'foo'
7};
8
9for(let {node, path} of new RecursiveIterator(root)) {
10    console.log(path.join('.'), node);
11}
12
13// object    Object {number: 1}
14// object.number    1
15// string    foo