js | 作用域

embedded/2024/11/14 21:31:01/

前置知识

作用域

const对象怎么禁止修改

  • 方法一: Object.freeze
  • 方法二:defineProperty+递归,对于每个节点都有:writable:false
javascript">const obj={a1:{b1:{c1:'c1'}},a2:{b1:{c1:'c2'},b2:[]},
}// solution1: Object.freeze(obj)
// Object.freeze(obj);
// obj.a2="new"
// console.log(obj)function myFoo(obj){if(!obj){return;}Object.keys(obj).forEach(key=>{if(typeof obj[key]==="object"){Object.defineProperty(obj,key,{writable:false});myFoo(obj[key]);}});
}myFoo(obj);
obj.a2="new"
console.log(obj)

http://www.ppmy.cn/embedded/137596.html

相关文章

半导体制造技术导论(第二版)萧宏 第二章集成电路工艺介绍答案

本章要求 1. 成品率的概念 整体成品率是指通过最后测试的良好芯片总数与生产所有晶圆上的晶粒总数的比值 2. 成品率的重要性 成品率决定一个IC芯片制造厂赔钱还是赚钱3. 描述一个无尘室的基本结构 4. 说明无尘室协议规范的重要性 严格遵守无尘室协议规范很重要&#xff0…

【蓝桥等考C++真题】蓝桥杯等级考试C++组第13级L13真题原题(含答案)-成绩排序ABCDE

CL13 成绩排序(50 分) 分别给出代号为 A、B、C、D、E 的五名同学的跳远成绩:请按照成绩从高到低,将五名同学的代号输出。输入: 输入五个不相同的正整数(不超过 100): 表示五名同学的成绩,相邻…

LayUI组件国际化多国语言版本脚本-下篇根据语种替换

最近项目需要使用多国语言版本,但是项目之前的代码使用了Layui组件,全网找不到layui的多语言,只能自己动手做,使用Python脚本提取组件中所有的中文,使用本文脚本将中文替换成相应的语种, 1、请将翻译后lan…

蓝桥杯每日真题 - 第10天

题目:(班级活动) 题目描述(14届 C&C B组C题) 解题思路: 题目要求我们找到最小的修改次数,使得任意一名同学的 ID 都与另一名同学的 ID 不相同。可以总结出这是一个寻找“重复数字最少修改…

css实现div被图片撑开

固定好盒子的宽度&#xff0c;高度随传过来的图片大小决定 <div class"tab-con"> <img:src"concertInfo.detail"alt""> </div>.tab-con {margin-bottom: 20px;width: 700px;img {width: 700px;height: auto;object-fit: cont…

SpringCloud学习笔记

SpringCloud 在微服务中&#xff0c;不同的服务板块是分开的&#xff0c;有自己的数据库。但是在业务中可能存在服务板块中互相调用的情况&#xff0c;比如订单服务中需要获取用户信息&#xff0c;这时候不能再自己的板块中直接进行查询&#xff0c;否则违反了微服务的理念&am…

深入探讨 .NET Core 3.0 浮点计算差异与解决方案

在 .NET Core 3.0 中&#xff0c;对浮点解析和格式进行了更改&#xff0c;以符合 IEEE 754-2008 标准。您可以在这篇文章中阅读有关这些更改的更多信息。在使用 Stimulsoft 产品时&#xff0c;这些更改最常表现为舍入数字和出现“负号”零。 Stimulsoft Ultimate &#xff08;…

微服务相关问题

什么是雪崩 1、微服务相互调用&#xff0c;服务提供者出现故障或阻塞&#xff1b; 2、服务调用者没有做好异常处理&#xff0c;导致自身故障&#xff1b; 3、调用链中的所有服务级联失败&#xff0c;导致整个集群故障&#xff1b; 解决思路 1、尽量避免服务出现故障或阻塞&…