深拷贝函数
分类专栏: Javascript&
标签: javascript深拷贝
简介 手写一个深拷贝函数
<div style="background-color: #ffffff; font-family: 'Fira Code', Consolas, 'Courier New', monospace; font-size: 20px; line-height: 27px; white-space: pre;">
<div><span style="color: #008000;">// 手写一个深拷贝函数</span></div>
<br />
<div><span style="color: #0000ff;">function</span> deepCopy(obj) {</div>
<br />
<div> <span style="color: #0000ff;">var</span> result = Array.isArray(obj) ? [] : {};</div>
<br />
<div> <span style="color: #0000ff;">for</span> (<span style="color: #0000ff;">var</span> key <span style="color: #0000ff;">in</span> obj) {</div>
<br />
<div> <span style="color: #0000ff;">if</span> (obj.hasOwnProperty(key)) {</div>
<br />
<div> <span style="color: #0000ff;">if</span> (<span style="color: #0000ff;">typeof</span> obj[key] === <span style="color: #a31515;">'object'</span> && obj[key] !== <span style="color: #0000ff;">null</span>) {</div>
<br />
<div> result[key] = deepCopy(obj[key]); <span style="color: #008000;">//递归复制</span></div>
<br />
<div> } <span style="color: #0000ff;">else</span> {</div>
<br />
<div> result[key] = obj[key];</div>
<br />
<div> }</div>
<br />
<div> }</div>
<br />
<div> }</div>
<br />
<div> <span style="color: #0000ff;">return</span> result;</div>
<br />
<div>}</div>
</div>
分享到:
转载:
喜欢 2
收藏
暂无评论信息
- 相关文章
- 文章推荐
-
Node 配置sequelize + mysql,根据模型自动创建数据库表
研究了一下午的node + sequelize + mysql。
-
半导体短缺即将结束?分析师:如果没有 1 美元芯片会影响更多
德勤咨询(Deloitte Consulting)的芯片分析师认为,随着芯片行业资本支出的增加,需求度较高的工厂已经开工,预示着短缺情况即将结束。
-
Docker 常用命令
docker目前代替虚拟机使用的一个容器,灵活好用。
-
亚马逊推出“无需收银员”的新技术,以此帮助品牌和广告商提高销量
北京时间 6 月 30 日早间消息,据报道,亚马逊发明了一种无需收银员的技术,可以加快人们去杂货店或便利店的速度。现在,该公司希望利用这个跟踪系统来帮助品牌和广告商提高销量。&
- 点击排行
- 站长推荐
- 猜你喜欢
- 网站信息
- 站内问答:12篇
- 站内文章:213篇
- 建站时间:已运行1245天
- 备案号: 浙ICP备2022018799号
- 语言:
- English(USA)
- French(FR)
- Chinese(ZH)
无数据