proxy-freeze
!npmnpm-imagenpm-url
!travistravis-imagetravis-url
!standardstandard-imagestandard-urlA simple way to freeze JavaScript objects and know of attempted modifications.
Why?
Why not just use Object.freeze and Object.isFrozen?If you use
Object.freeze
and later set a property on that object, it silently fails unless in strict
mode. Also, using this technique gives you the ability to listen for warnings on the warning
event.Install
npm install --save proxy-freeze
Usage
proxyFreeze(target)
- target: can be either an
object
or constructorfunction
let obj = {
name: 'jp'
}
let obj2 = proxyFreeze(obj)
obj2.name = 'bob'
process.once('warning', (warning) => {
console.warn(warning.name) // => ProxyFreezeWarning
console.warn(warning.message) // => Trying to set value of property (name) of frozen object.
console.warn(warning.stack)
})