一、前言

今天在开发项目过程中,遇到了一个需求,先请求了30个数据,放在一个列表中,并渲染展示出来,然后又请求了另外的30个数据,放在一个列表中,想在前一个数据的后面继续展示,即将第二次请求的来的数据列表跟第一次请求的数据列表做一个合并,需要用到数据的合并,接下来给大家介绍一下javascript中数据合并的几个方法

二、数组的组合

concat()方法

作用: concat()方法用于连接两个及以上的数组,并且该方法不会改变原来的数组

语法: array1.concat(array2,array3,…,arrayX) /array1.concat(1,2,3)

用法一:

let array1 = [100,200]
const array2 = [5,6,7,8]
const array3 = [10,11,12,13,14]
//因为concat()方法不会改变原数组,所以这里会返回一个新的数组,定义给我们的newarray
const newarray1 = array1.concat(array2)
const newarray2 = array1.concat(array2,array3)
console.log(newarray1, newarray2)
//验证原数组array1是否有改变
console.log(array1)

输出结果为:

newarray1:[100,200,5,6,7,8]
newarray2:[100,200,5,6,7,8,10,11,12,13,14]
array1: [100,200]

总结:使用concat()方法时,如果传入的参数是数组,那会将它们逐一遍历,将数组中每个元素按顺序添加到被合并数组的末尾,最终返回一个新的数组,原数组不变。

用法二:

let array1 = [100,200]
const newarray3 = array1.concat(56,79,84)
console.log(newarray3)

输出结果为:

newarray3:[100,200,56,79,84]

总结:使用concat()方法时,如果传入参数是数字,那么就会将每个数字按顺序添加到被合并数组的末尾。

push(…items)

作用: 这是一种特殊的语法,可以将items跟另外一个数组合并,类似于上面的concat()方法,但不同的是,push(…items)会改变原数组

语法: array1.push(…array2)

用法:

let array1 = [100,200]
const array2 = [5,8,9,10]
array1.push(...array2)
//因为该方法会改变原数组,所以这里直接打印array1
console.log(array1)

输出结果:

array1: [100,200,5,8,9,10]

总结:在开发项目时,一般最方便是用这种方法,因为可以直接改变原数据。

其他方法

其实还有别的数组组合的方法,例如用for循环就可以简单实现数组的组合了,这里就不做多讲解了。

三、结束语

这是我在开发vue.js项目实战第三天中遇到的一个小问题,自己通过查询资料已经解决了,希望我的解决办法能对大家有所帮助。如果大家感兴趣,可以关注一波,每天跟大家分享一些问题和解决办法,大家也可以跟我分享一下你们的经验。

javascript 数组的组合的更多相关文章

  1. JavaScript 二维数组排列组合2

    <html> <head> <title>二维数组排列组合</title> </head> <body> <div id= ...

  2. JavaScript 二维数组排列组合

    <html> <head> <title>二维数组排列组合</title> </head> <body> <div id= ...

  3. Javascript数组操作

    使用JS也算有段时日,然对于数组的使用,总局限于很初级水平,且每每使用总要查下API,或者写个小Demo测试下才算放心,一来二去,浪费不少时间:思虑下,堪能如此继续之?当狠心深学下方是正道. 原文链接 ...

  4. 第七章:Javascript数组

    数组是值的有序结合.每个值叫做一个元素,而每个元素在数组中都有一个位置,用数字表示,称为索引. javascript数组是无类型的:数组的元素可以是任意类型,并且同一个数组中的不同元素也可能有不同的类 ...

  5. JavaScript数组的22种方法

    原文:http://www.cnblogs.com/xiaohuochai/p/5682621.html javascript中数组的22种方法   前面的话 数组总共有22种方法,本文将其分为对象继 ...

  6. JavaScript设计模式之----组合模式

    javascript设计模式之组合模式 介绍 组合模式是一种专门为创建Web上的动态用户界面而量身制定的模式.使用这种模式可以用一条命令在多个对象上激发复杂的或递归的行为.这可以简化粘合性代码,使其更 ...

  7. 重学JavaScript - 数组

    作者:狐狸家的鱼 GitHub:surRimn 整理自MDN文档 数组 数组是一种类列表对象,长度和元素类型不固定. 描述 访问数组 JavaScript数组的索引是从0开始的,第一个元素的索引为0, ...

  8. JavaScript 数组(Array)方法汇总

    数组(Array)常用方法; 数组常用的方法:concat(),every(), filter(), forEach(),  indexOf(), join(), lastIndexOf(), map ...

  9. javascript数组的属性、方法和清空-最全!!!(必看)

    今天经理要我从新看一遍js,当我再看<精通js和jquery>这本书时,发现关于数组的这章节讲的很少,于是想自己总结一下数组的常用方法. 定义数组: var arr = new Array ...

随机推荐

  1. Cordova iPhone 刘海屏 和 安卓瀑布屏 等异形屏幕的适配处理

    1.  在cordova项目的config.xml中指定StatusBarOverlaysWebView(需要cordova-plugin-statusbar插件支持),表示应用界面是否覆盖状态栏(系 ...

  2. vue学习(七) v-model 双向数据绑定

    //html <div id="app"> <input type="text"v-model="msg" style=& ...

  3. C++的vector的使用方法

    vector c++的vector的使用方法,创建,初始化,插入,删除等. #include "ex_vector.h" #include <iostream> #in ...

  4. MAVEN无法下载com.oracle:jdbc14:jar解决办法

    原文链接:https://www.cnblogs.com/gqzdev/p/11742999.html 第一步,下载ojdbc14jar包: 链接:ojdbc14jar 提取码: 2m59 第二步,下 ...

  5. dubbo泛化调用 小demo

    前两天刚好有个同事来问是否用过 dubbo泛化 调用,不需要通过指定配置.第一次听到的时候,还是有点懵,但觉得有意思,可以学点东西. 立马百度了,找了demo,这篇比较容易上手(http://www. ...

  6. Django学习路7_注册app到能够在页面上显示app网页内容

    在根目录下创建一个 app3 app3 是新 app 的名字 创建一个 urls.py 在 urls.py 中添加 urlpatterns 列表 容纳需要显示在页面上的函数 from django.c ...

  7. Python Tuple(元组) cmp()方法

    描述 Python 元组 cmp() 函数用于比较两个元组元素.高佣联盟 www.cgewang.com 语法 cmp()方法语法: cmp(tuple1, tuple2) 参数 tuple1 -- ...

  8. luogu P3285 [SCOI2014]方伯伯的OJ splay 线段树

    LINK:方伯伯的OJ 一道稍有质量的线段树题目.不写LCT splay这辈子是不会单独写的 真的! 喜闻乐见的是 题目迷惑选手 \(op==1\) 查改用户在序列中的位置 题目压根没说位置啊 只有排 ...

  9. Dynamics365 Field Service Work Order Theory

    Come from :https://neilparkhurst.com/2016/08/20/field-service-work-order-theory/ In this post I aim ...

  10. Pytorch Autograd (自动求导机制)

    Pytorch Autograd (自动求导机制) Introduce Pytorch Autograd库 (自动求导机制) 是训练神经网络时,反向误差传播(BP)算法的核心. 本文通过logisti ...