Skip to content

Instantly share code, notes, and snippets.

@takahashi-h5
Created February 24, 2020 07:11
Show Gist options
  • Save takahashi-h5/320d6ec6399b4b40a512503e1d3e68ef to your computer and use it in GitHub Desktop.
Save takahashi-h5/320d6ec6399b4b40a512503e1d3e68ef to your computer and use it in GitHub Desktop.
const obj = {
name: 'yamada',
age: 17
};
const handler = {
set: function(target, prop, value) {
console.log(value)
target[prop] = value.toUpperCase()
},
get: (target, prop)=> {
console.log(target[prop])
return target[prop].toUpperCase()
}
}
const proxy = new Proxy(obj, handler)
proxy.name = 'takahashi' // ここでsetが実行される
console.log(proxy.name) // ここでgetが実行される
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment