chain.js 748 B

1234567891011121314151617181920212223242526272829303132333435
  1. var lodash = require('./lodash');
  2. /**
  3. * Creates a `lodash` object that wraps `value` with explicit method
  4. * chaining enabled.
  5. *
  6. * @static
  7. * @memberOf _
  8. * @category Chain
  9. * @param {*} value The value to wrap.
  10. * @returns {Object} Returns the new `lodash` wrapper instance.
  11. * @example
  12. *
  13. * var users = [
  14. * { 'user': 'barney', 'age': 36 },
  15. * { 'user': 'fred', 'age': 40 },
  16. * { 'user': 'pebbles', 'age': 1 }
  17. * ];
  18. *
  19. * var youngest = _.chain(users)
  20. * .sortBy('age')
  21. * .map(function(chr) {
  22. * return chr.user + ' is ' + chr.age;
  23. * })
  24. * .first()
  25. * .value();
  26. * // => 'pebbles is 1'
  27. */
  28. function chain(value) {
  29. var result = lodash(value);
  30. result.__chain__ = true;
  31. return result;
  32. }
  33. module.exports = chain;