0.0.0 • Published 9 years ago

lodash-recursive v0.0.0

Weekly downloads
-
License
ISC
Repository
-
Last release
9 years ago

lodash recursive

map recursive

var assert = require('assert')
var recursive = require('lodash-recursive')

var nodes = [
  {
    value: 'alpha',
    children: [
      {
        value: 'beta'
      }
    ]
  },
  {
    value: 'gamma'
  }
]

var newNodes = recursive.map(nodes, function (node, recursive, map) {
  if (node.children) recursive(node.children)
  return map(node)
}, function (node) {
  if (node.value == 'beta') node.valid = true
  return node
})

var expected = [
  {
    "value": "alpha",
    "children": [
      {
        "value": "beta",
        "valid": true
      }
    ]
  },
  {
    "value": "gamma"
  }
]

assert.deepEqual(expected, newNodes)