js合并数组与合并对象的区别_js将对象转为数组

js合并数组与合并对象的区别_js将对象转为数组一、数组合并1、for循环会改变原数组,如果不想改变原数组需要生成一个新数组leta=[1,2,3];letb=[4,5];//1for循环for(variinb){a.push(b[i]);}console.log(a);//[1,2,3,4,5]2、concat()concat()方法用于连接两个或多个数组,该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

 

目录

 

一、对象合并

1、Object.assign(target, …sources)

二、数组合并

1、for循环

2、concat()

3、apply

4、es6扩展运算符[…arr, …arr2]

5、push(…arr)

 


一、对象合并

1、Object.assign(target, ...sources)

Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象分配到目标对象,它将返回目标对象

1、源对象属性替换目标对象属性

2、同名属性,后面替换前面属性

3、基本数据类型字符串生成对象

    let obj = { a: 1, b: 2, c: 3 }
    let obj2 = { b: 5, d: 6 }
    let res = Object.assign(obj, obj2)
    console.log(res);//{a: 1, b: 5, c: 3, d: 6}

Jetbrains全家桶1年46,售后保障稳定

二、数组合并

1、for循环

会改变原数组,如果不想改变原数组需要生成一个新数组

    let a = [1, 2, 3];
    let b = [4, 5];

    //1 for循环
    for (var i in b) {
        a.push(b[i]);
    }
    console.log(a); //[1,2,3,4,5]

2、concat()

concat() 方法用于连接两个或多个数组,该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本

    let a = [1, 2, 3];
    let b = [4, 5];
    let c = a.concat(b);
    console.log(c);//[1,2,3,4,5]
    console.log(a);//[1,2,3] 原数组不变

3、apply

    let a = [1, 2, 3];
    let b = [4, 5];
    let c = a.push.apply(a, b);
    console.log(a); //[1,2,3,4,5]

4、es6扩展运算符[…arr, …arr2]

扩展运算符(…)也可以将某些数据结构转为数组

    let a = [1, 2, 3];
    let b = [4, 5];
    let arr1 = [...a, ...b]
    console.log(arr1)

5、push(…arr)

    let a = [1, 2, 3];
    let b = [4, 5];
    let c = a.push(...b)
    console.log(a)

 

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/213428.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • [随笔] IE8Beta2 的标准是不是太高了!

    [随笔] IE8Beta2 的标准是不是太高了!昨天安装了ie8beta2,发现网上支付都无法操作。支付宝无法使用。切换兼容模式也没有效果。各位高手有知道怎么回事的吗?请指教!!!!!转载于:https://www.cnblogs.com/zangdalei/archive/2008/08/29/1279160.html…

    2025年7月18日
    1
  • java创建线程池的几种方式_Java中的线程池

    java创建线程池的几种方式_Java中的线程池Java创建线程池线程池:4大方法,7大参数,4种拒绝策略池化技术:把一些能够复用的东西(比如说数据库连接、线程)放到池中,避免重复创建、销毁的开销,从而极大提高性能。优点:降低系统资源消耗,通过重用已存在的线程,降低线程创建和销毁造成的消耗;提高系统响应速度,当有任务到达时,无需等待新线程的创建便能立即执行;方便线程并发数的管控,线程若是无限制的创建,不仅会额外消耗大量系统资源,更是占用过多资源而阻塞系统或oom等状况,从而降低系统的稳定性。线程池能有效管控线程,统一分配、调优,提供资

    2022年10月1日
    0
  • IDEa快捷键_idea进入方法快捷键

    IDEa快捷键_idea进入方法快捷键一、IntelliJIDEA快捷键大全Win版一、Ctrl快捷键 快捷键 说明 常用 Ctrl+F 在当前文件进行文本查找 √ Ctrl+R 在当前文件进行文本替换 √ Ctrl+Z 撤销 √ Ctrl+Y

    2022年10月1日
    0
  • Python Lambda匿名函数示例

    Python Lambda匿名函数示例本文转自https://www.freeaihub.com/article/lambda-in-python.html,该页可在线互动学习匿名函数在本示例中,我们将看到如何在Python中使用Lam

    2022年7月5日
    19
  • scratch编程小游戏——黄金矿工

    黄金矿工的玩法就是操控一个不断摆来摆去的钩子去挖出黄金,现在我们就来用scratch编一个黄金矿工首先新建好变量:矿车要画出许多的造型:代码:钩爪的绳索是这个游戏最为复制的一点,方法是移动后画出一条线,返回时用背景一样的颜色来覆盖,我们首先来画出造型:红色的是中心位置代码如下:(此代码需要用到一部分自定义,不懂的见文章末尾链接)自定义部分是这个代码的核心:接下来是黄金,造型的话要画出三个:大、中、小各一个代码如下:黄金代码是程序中非常重要的一环,一定不要有差错现

    2022年4月4日
    2.3K
  • mac安装系统进度条卡住了_mac安装系统进度条卡住了

    mac安装系统进度条卡住了_mac安装系统进度条卡住了查看所有进程ps-ef|grepinstall,然后kill掉macports的安装进程怎么解决:关闭wifi,重新打开安装包就好啦!

    2022年9月21日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号