ES6 - handler.get ()

El siguiente ejemplo define una clase Student con un constructor y un método getter personalizado, fullName. El método getter personalizado devuelve una nueva cadena concatenando elfirstName y lastName. El programa crea un proxy y define un objeto manejador que intercepta cada vez que se accede a las propiedades firstName, lastName y fullName. Los valores de las propiedades se devolverán en mayúsculas.

<script>
   class Student{
      constructor(firstName,lastName){
         this.firstName = firstName
         this.lastName = lastName
      }
      get fullName(){
         return `${this.firstName} : ${this.lastName}`
      }
   }
   const handler = {
      get: function(target,property){
         Reflect.get(target,property).toUpperCase();
      }
   }
   const s1 = new Student("Tutorials","Point")
   const proxy = new Proxy(s1,handler)
   console.log(proxy.fullName)
   console.log(proxy.firstName)
   console.log(proxy.lastName)
</script>

La salida del código anterior será la siguiente:

TUTORIALS : POINT
TUTORIALS
POINT