老师您看写的有什么不规范的么
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
//补充代码
const xiaoming = {
age: 14,
name: '小明',
obj: {
a: 1
}
}
Object.defineProperty(Object,"defineFreeze",{
value: function(obj){
var i;
for(i in obj){
if(obj.hasOwnProperty(i)){
if(obj[i] instanceof Object){
Object.defineFreeze(obj[i]);
}else{
Object.defineProperty(obj,i,{
writable:false
})
}
}
}
Object.seal(obj);
}
});
Object.defineFreeze(xiaoming)
</script>
</body>
</html>
55
收起
正在回答
3回答
同学你好,代码实现正确,也很规范。继续加油,祝学习愉快!
Odyssey_2022
2021-09-26 15:40:19
// 你这样写有bug // xiaoming.obj 还是可以修改的,如 xiaoming.obj = null // for in 循环里改成这样就可以了 if(obj.hasOwnProperty(i)){ Object.defineProperty(obj, i, { writable: false }) Object.seal(obj); } if(obj[i] instanceof Object){ Object.freezePolyfill(obj[i]) }
4.Vue与React高级框架开发
- 参与学习 人
- 提交作业 239 份
- 解答问题 10739 个
本阶段带你深入前端开发的肌理,通过ES6基础知识和前端主流高级框架的学习,助你快速构建企业级移动webAPP应用,进入职场的终极battle
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星