No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

25 líneas
857 B

hace 3 años
  1. var LazyWrapper = require('./_LazyWrapper'),
  2. arrayPush = require('./_arrayPush'),
  3. arrayReduce = require('./_arrayReduce');
  4. /**
  5. * The base implementation of `wrapperValue` which returns the result of
  6. * performing a sequence of actions on the unwrapped `value`, where each
  7. * successive action is supplied the return value of the previous.
  8. *
  9. * @private
  10. * @param {*} value The unwrapped value.
  11. * @param {Array} actions Actions to perform to resolve the unwrapped value.
  12. * @returns {*} Returns the resolved value.
  13. */
  14. function baseWrapperValue(value, actions) {
  15. var result = value;
  16. if (result instanceof LazyWrapper) {
  17. result = result.value();
  18. }
  19. return arrayReduce(actions, function(result, action) {
  20. return action.func.apply(action.thisArg, arrayPush([result], action.args));
  21. }, result);
  22. }
  23. module.exports = baseWrapperValue;