Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

proxy_dev2.js 2.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. function base_fn(){
  2. clog("base_fn")
  3. }
  4. base_fn = {
  5. "a":"xyz"
  6. }
  7. function base_fn2(){
  8. clog("base_fn2")
  9. }
  10. rfns2 = {
  11. rfn_apply(){
  12. clog("RFN:apply")
  13. return Reflect.apply(...arguments)
  14. },
  15. rfn_construct(){
  16. clog("RFN:construct")
  17. return Reflect.construct(...arguments)
  18. },
  19. rfn_defineProperty(){
  20. clog("RFN:defineProperty")
  21. return Reflect.defineProperty(...arguments)
  22. },
  23. rfn_deleteProperty(){
  24. clog("RFN:deleteProperty")
  25. return Reflect.deleteProperty(...arguments)
  26. },
  27. rfn_get(){
  28. clog("RFN:get")
  29. return Reflect.get(...arguments)
  30. },
  31. rfn_getOwnPropertyDescriptor(){
  32. clog("RFN:getOwnPropertyDescriptor")
  33. return Reflect.getOwnPropertyDescriptor(...arguments)
  34. },
  35. rfn_getPrototypeOf(){
  36. clog("RFN:getPrototypeOf")
  37. return Reflect.getPrototypeOf(...arguments)
  38. },
  39. rfn_has(){
  40. clog("RFN:has")
  41. return Reflect.has(...arguments)
  42. },
  43. rfn_isExtensible(){
  44. clog("RFN:isExtensible")
  45. return Reflect.isExtensible(...arguments)
  46. },
  47. rfn_ownKeys(){
  48. clog("RFN:ownKeys")
  49. return Reflect.ownKeys(...arguments)
  50. },
  51. rfn_preventExtensions(){
  52. clog("RFN:preventExtensions")
  53. return Reflect.preventExtensions(...arguments)
  54. },
  55. rfn_set(){
  56. clog("RFN:set")
  57. return Reflect.set(...arguments)
  58. },
  59. rfn_setPrototypeOf(){
  60. clog("RFN:setPrototypeOf")
  61. return Reflect.setPrototypeOf(...arguments)
  62. },
  63. }
  64. rprox2 = {
  65. apply: rfns.rfn_apply,
  66. construct: rfns.rfn_construct,
  67. defineProperty: rfns.rfn_defineProperty,
  68. deleteProperty: rfns.rfn_deleteProperty,
  69. get: rfns.rfn_get,
  70. getOwnPropertyDescriptor: rfns.rfn_getOwnPropertyDescriptor,
  71. getPrototypeOf: rfns.rfn_getPrototypeOf,
  72. has: rfns.rfn_has,
  73. isExtensible: rfns.rfn_isExtensible,
  74. ownKeys: rfns.rfn_ownKeys,
  75. preventExtensions: rfns.rfn_preventExtensions,
  76. set: rfns.rfn_set,
  77. setPrototypeOf: rfns.rfn_setPrototypeOf,
  78. }
  79. // dec_fn = new Proxy(base_fn,rprox2)
  80. // base_fn.__proto__
  81. base_fn.__proto__ = new Proxy(base_fn.__proto__,rprox2)
  82. // base_fn.prototype = new Proxy(base_fn.prototype,rprox2)
  83. base_fn.q=3
  84. base_fn.q={}