js实现属性只读
Posted meetqy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js实现属性只读相关的知识,希望对你有一定的参考价值。
第一种 Object.defineProperty
这种是在vue源码中看见的
let obj = {
$data: {}
};
Object.defineProperty(obj, '$data', {
get() {
return this;
},
set() {
return console.warn('只读属性不能修改');
}
})
第二种使用闭包实现
使用场景:团队协作开发的时候,没有详细的文档规范,防止队友误操作。
const Ds = (function () {
const obj = {
$data: {
a:1
}
}
class Ds {
get() {
return obj;
}
}
return new Ds();
})()
console.log(Ds.get());
console.log(Ds.obj); // undefind
demo地址: js实现属性只读
以上是关于js实现属性只读的主要内容,如果未能解决你的问题,请参考以下文章