Advertisement
Guest User

Untitled

a guest
Jan 16th, 2023
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function re(instance, name, val){
  2.     let _value = val;
  3.     Object.defineProperty(instance, name, {
  4.         get: () => {
  5.             console.log('getter called');
  6.             return _value;
  7.         },
  8.         set: (v) => {
  9.             console.log('setter called');
  10.             return _value = v;
  11.         },
  12.         configurable: true
  13.     });
  14.     return val;
  15. }
  16.  
  17. class A {
  18.     prop = re(this, 'prop', 456)
  19. }
  20.  
  21. const a = new A()
  22. console.log(a.prop);
  23. a.prop = 123;
  24. console.log(a.prop);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement