Guest User

Untitled

a guest
Mar 21st, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.58 KB | None | 0 0
  1. const map = <T, R = T>(items: T[], cb: (item: T) => R): R[] => {
  2. const mapped: R[] = [];
  3.  
  4. for (let item of items) {
  5. mapped.push(cb(item));
  6. }
  7.  
  8. return mapped;
  9. };
  10.  
  11. const mapx = (items, cb) => {
  12. const mapped = [];
  13.  
  14. for (let item of items) {
  15. mapped.push(cb(item));
  16. }
  17.  
  18. return mapped;
  19. };
  20.  
  21. console.log(map(['1', '2', '3'], str => parseInt(str))[0]);
  22.  
  23. interface Person {
  24. age: number;
  25. name: string;
  26. }
  27.  
  28. interface Human {
  29. years: number;
  30. }
  31.  
  32. map<Human, Person>([{ years: 12 }], ({ years: age }) => ({ age, name: 'unknown' }));
  33. map([{ years: 12 }], ({ years: age }) => ({ age }));
Add Comment
Please, Sign In to add comment