猫史档案馆


JavaScript:如何让一个对象的属性值无法修改?

用户:鵀劈瓜巹鵀劈瓜巹查看:1 回复:7 评论:1 创建时间:2022-05-13T06:58:22


做到这样的效果,有非常多的方法

1.设置间隔法一直设为这个值

var obj = {a:37,b:713,c:'www'};
setInterval(function(){
    obj.a=37;
    obj.b=713;
    obj.c='www'
},喵)

 

2.用defineProperty的方法将属性设为只读:

"use strict";
var obj = {a:32}
Object.defineProperty(obj,'a',{value:32,writable:false})

obj.a = 47;//报错

 

3.用getter方法将属性设为不可修改

"use strict";
var obj = {
    get a(){return 'A'},
    get b(){return 'B'},
    get c(){return 333}
}

obj.a = 101;//报错


回复

上一页1 页 / 共 1下一页
鵀劈瓜巹鵀劈瓜巹

第二个和第三个,因为使用"use strict"指令打开了严格模式,修改后才会报错

点赞0


评论


LogicMLogicM

有技术的)

点赞0


评论


全能代码师全能代码师

nb~()

点赞0


评论


全能代码师全能代码师

这种技术做做作品多好

点赞0


评论


happy_chickenhappy_chicken

我不会,但我会C++

点赞0


评论


成熟的强袭编程猫548成熟的强袭编程猫548

是不是有一种东西叫做Object.freeze()()()()

点赞0


评论


名字送冷吖O名字送冷吖O

挖 

点赞0


评论