JS的Object值怎样合并

这次给大家带来JS的Object值怎样合并,JS的Object值合并注意事项有哪些,下面就是实战案例,一起来看一下。

前言:在日常开发工作中我们可能会遇到js中对象中所有值的复制工作,也有可能是通过electron开发客户端,改版时候面临到的设置合并问题。那么本文将对此做一个简要解决方案的叙述。

介绍:比如有obj1, obj2,我们需要将obj1中的所有与obj2中相同字段相同深度的值copy给obj2,并且需要保持obj2字段结构不变,调用一下方法即可(采用ES6写法)。

代码:

/**     * 将src中的数据copy到dist中,并保留dist的结构     * @param src     * @param dist     */    copyValue(src, dist) {      if (!src || typeof(src) !== 'object' || typeof(dist) !== 'object'){        return ;      }      let keys = Object.keys(dist)      if (keys && keys.length > 0 && isNaN(keys[0])){        keys.forEach(key => {          let value = dist[key]          let srcVal = src[key]          // 判断是不是对象,如果是则继续遍历,不是则开始赋值或忽略          if (value !== undefined && typeof(value) === 'object' && srcVal && typeof(srcVal) === 'object' && srcVal[0] === undefined){            copyValue(srcVal, value)          } else if (value !== undefined && srcVal && typeof(value) == typeof (srcVal)){            // 如果源数据存在,并且类型一致,则开始赋值            dist[key] = src[key]          }        })      }    },

登录后复制

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

JS伪数组使用详解

JS怎么判断客户端类型

以上就是JS的Object值怎样合并的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2772552.html

(0)
上一篇 2025年3月8日 13:20:50
下一篇 2025年2月24日 20:07:06

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 怎样操作jackson解析json字符串时首字母的大小写转换

    这次给大家带来怎样操作jackson解析json字符串时首字母的大小写转换,操作jackson解析json字符串时首字母大小写转换的注意事项有哪些,下面就是实战案例,一起来看一下。 问题 楼主碰到的问题是,在实体类和表中定义的某个字段为RM…

    编程技术 2025年3月8日
    200
  • JS实现单例模式的步奏详解

    这次给大家带来JS实现单例模式的步奏详解,JS实现单例模式的注意事项有哪些,下面就是实战案例,一起来看一下。 传统单例模式 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 实现单例核心思想 无非是用一个变量来标志当前是否已经为某个类…

    编程技术 2025年3月8日
    200
  • JS怎样将json格式数组下载到excel表格里

    这次给大家带来js怎样将json格式数组下载到excel表格里,js将json格式数组下载到excel表格里的注意事项有哪些,下面就是实战案例,一起来看一下。 实例如下: $(document).ready(function(){ $(‘#…

    编程技术 2025年3月8日
    200
  • JS做出移动端触摸轮播效果

    这次给大家带来JS做出移动端触摸轮播效果,JS做出移动端触摸轮播效果的注意事项有哪些,下面就是实战案例,一起来看一下。 下面是移动端手指滑动轮播图的完整代码。 *{margin:0;padding:0;}li{list-style:none…

    2025年3月8日 编程技术
    200
  • JS的多线程运行库Nexus.js使用详解

    这次给大家带来JS的多线程运行库Nexus.js使用详解,使用JS多线程运行库Nexus.js的注意事项有哪些,下面就是实战案例,一起来看一下。 首先,如果你不熟悉这个项目,建议先阅读之前写的一系列文章。如果你不想阅读这些,不用担心。这里面…

    编程技术 2025年3月8日
    200
  • JS操作TXT文本在指定位置插入内容

    这次给大家带来JS操作TXT文本在指定位置插入内容,JS操作TXT文本在指定位置插入内容的注意事项有哪些,下面就是实战案例,一起来看一下。 实例如下所示: function insertAtCursor(myField, myValue) …

    编程技术 2025年3月8日
    200
  • nodejs怎么实现gulp打包功能

    这次给大家带来nodejs怎么实现gulp打包功能,nodejs实现gulp打包功能的注意事项有哪些,下面就是实战案例,一起来看一下。 最近换了家新公司,由于是创业公司,项目基本从零开始搭建。工作几年,也没想过写点什么技术性的东西,今天突然…

    编程技术 2025年3月8日
    200
  • 使用nodejs在微信中调用收货地址

    这次给大家带来使用nodejs在微信中调用收货地址,使用nodejs在微信中调用收货地址的注意事项有哪些,下面就是实战案例,一起来看一下。 1、微信调取收货地址API,公众号必须有支付权限。2、配置对应使用收货地址功能的域名(域名配置请在公…

    编程技术 2025年3月8日
    200
  • Vuejs响应式原理具体解析

    这次给大家带来Vuejs响应式原理具体解析,使用Vuejs响应式原理的注意事项有哪些,下面就是实战案例,一起来看一下。 响应式原理 > vuejs中的模型(model)和视图(view)是保持同步的,在修改数据的时候会自动更新视图,这…

    编程技术 2025年3月8日
    200
  • JS的class、构造函数、工厂函数使用方法

    这次给大家带来JS的class、构造函数、工厂函数使用方法,使用JSclass、构造函数、工厂函数的注意事项有哪些,下面就是实战案例,一起来看一下。 到了ES6时代,我们创建对象的手段又增加了,在不同的场景下我们可以选择不同的方法来建立。现…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论