class User {
constructor(name, surname) {
this.name = name
this.surname = surname
}
fullName() {
return `${this.name} ${this.surname}`
}
}
let user = new User("Mark", "Minerov")
user = new Proxy(user, {
get(target, property) {
if (typeof target[property] === 'function') {
console.log(`function ${property} was called!`)
}
return target[property]
}
})
console.log(user.fullName())
这可以通过以下方式完成
Proxy: