Advertisement
Guest User

Untitled

a guest
Oct 21st, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.89 KB | None | 0 0
  1. // Option One
  2. // get("user", "address", "postcode")
  3. function get(){
  4. const keys = [...arguments];
  5. function check (keys = [], obj = window) {
  6. console.log(`keys: ${keys}`);
  7. console.log(obj);
  8. console.log("-------------");
  9. if (keys.length === 0) {
  10. return undefined;
  11. } else if (keys.length === 1) {
  12. return obj[keys[0]];
  13. }
  14. const key = keys.shift();
  15. if (obj[key] === undefined) {
  16. return undefined;
  17. } else {
  18. return check (keys, obj[key])
  19. }
  20. }
  21. return check(keys)
  22. }
  23.  
  24.  
  25. // Option Two
  26. // _get(() => user.address.postcode)
  27. // _get(() => user.address.postcode, "none")
  28. function _get(func, fallbackValue) {
  29. try {
  30. const value = func();
  31. return (value === null || value === undefined) ? fallbackValue : value;
  32. } catch (e) {
  33. return fallbackValue;
  34. }
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement