开发者社区> 问答> 正文

在JavaScript中克隆对象

以下内容首先记录0,然后记录1。如何存储对象的副本,而不是对其的引用?

debug.log(vi.details.segment); vi.nextSegment = vi.details; vi.nextSegment.segment++; debug.log(vi.details.segment); 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-09 11:55:14 340 0
1 条回答
写回答
取消 提交回答
  • 要在jQuery中克隆对象:

    var vi.nextSegment = jQuery.extend({}, vi.details); 注意:以上内容是浅表副本:任何嵌套对象或数组都将通过引用进行复制-意味着您所做的任何更改vi.nextSegment.obj[prop]都将反映在中vi.details.obj[prop]。如果您想要一个与原始对象完全分开的全新对象,则需要进行深层复制(通过true作为第一个参数):

    var vi.nextSegment = jQuery.extend(true, {}, vi.details);

    2020-02-09 11:55:25
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JavaScript面向对象的程序设计 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载