index.js 284 B

1234567891011121314151617
  1. 'use strict';
  2. var hasOwn = Object.prototype.hasOwnProperty;
  3. module.exports = function (xs, f) {
  4. if (xs.map) {
  5. return xs.map(f);
  6. }
  7. var res = [];
  8. for (var i = 0; i < xs.length; i++) {
  9. var x = xs[i];
  10. if (hasOwn.call(xs, i)) {
  11. res.push(f(x, i, xs));
  12. }
  13. }
  14. return res;
  15. };