Guest User

Untitled

a guest
Jul 20th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. with (mylib) {
  2. f1(f2(f1(), f3())); // five or 10 more lines like this
  3. }
  4.  
  5. Bobs_Library.Bobs_Library_Function_F1(Bobs_Library.Bobs_Library_Function_F2(Bobs_Library.Bobs_Library_Function_F1(), Bobs_Library.Bobs_Library_Function_F3()));
  6.  
  7. var bkupWin = {}; // Object to store existing window properties
  8.  
  9. for(var key in myLib) {
  10. if(myLib.hasOwnProperty(key)){
  11. if(window.hasOwnProperty(key)){
  12. bkupWin[key] = window[key]; // Backup current property
  13. }
  14. window[key] = myLib[key]; // Add property to window
  15. }
  16. }
  17.  
  18. f1(f2(f1(), f3()));
  19.  
  20. for(var key in myLib){
  21. if(myLib.hasOwnProperty(key)){
  22. delete window[key]; // Remove property from window
  23. if(bkupWin.hasOwnProperty(key)){
  24. window[key] = bkupWin[key]; // Restore old property
  25. }
  26. }
  27. }
  28.  
  29. var
  30. param1 = mylib.f1(),
  31. param2 = mylib.f3(),
  32. result = mylib.f2(param1, param2);
  33. mylib.f1(result);
  34.  
  35. mylib.f1(
  36. mylib.f2(
  37. mylib.f1(),
  38. mylib.f3()
  39. )
  40. );
  41.  
  42. var mylib = {
  43. f1: function () {
  44. /* do stuff */
  45. return this;
  46. },
  47. f2: function () {
  48. /* do stuff */
  49. return this;
  50. }
  51. }
  52.  
  53. // then you can chain calls, organize with indentation
  54. mylib
  55. .f1()
  56. .f2();
  57.  
  58. function f4() {
  59. return this.f1(this.f2(this.f1(), this.f3()));
  60. }
  61.  
  62. mylib.f1(mylib.f2(mylib.f1(), mylib.f3()));
  63.  
  64. mylib.f123_facade();
  65.  
  66. for (var key in myLib) {
  67. if (myLib.hasOwnProperty(key)) {
  68. window[key] = myLib[key];
  69. }
  70. }
  71.  
  72. function doWith(func, myLib) {
  73. for (var key in myLib) {
  74. if (myLib.hasOwnProperty(key)) {
  75. this[key] = myLib[key];
  76. }
  77. }
  78.  
  79. func.apply(this)
  80. }
  81.  
  82. var lib = {
  83. init: function(param1) {
  84. console.log(param1);
  85. },
  86. f2: function() {
  87. return "hi";
  88. }
  89. };
  90. doWith(function(){init(f2());},lib)
Add Comment
Please, Sign In to add comment