首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JavaScript引用类型之Array数组的concat()和push()方法的区别

在javascript中,我们一般都只用push向数组的尾部插入新元素的,但是其实在javascript中还有另外一个方法和push一样,也是向数组尾部插入新元素的,但是他们之间却存在着一定的区别,当我们看下面的代码的时候就明显的知道了...通过使用push操作数组: ? 2. 通过使用concat操作数组: ?...从上面的两个操作就很明显的看出来push和concat的区别了 push 遇到数组参数时,把整个数组参数作为一个对象插入;而 concat 则是拆开数组参数,一个元素一个元素地加进去。...push 直接改变当前数组;concat 不改变当前数组。 ...alert(colors[3]);//输出:red,blue,green,[object Object],[object Object] 显然concat将a集合拆分成name对象和"张三"对象,而

1.3K100

js数组push方法使用注意

js 数组的push方法,想必大家都知道是向数组末尾添加元素,但是有一个很关键的点需注意: 引自 MDN 返回值 当调用该方法时,新的 length 属性值将被返回。...而不是新的数组,如果不清楚这点,在使用过程中回遇到很大的坑。...顺带记一下其他几个数组的方法返回值: pop() pop()方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。...., elementN 要添加到数组开头的元素。 返回值 当一个对象调用该方法时,返回其 length 属性值。 concat() concat() 方法用于合并两个或多个数组。...返回值: 一个含有提取元素的新数组 总结: 开头和结尾添加都是返回数组的长度; 开头和结尾的删除都是返回删除的元素; splice()返回被删除的元素; concat返回新的数组; slice返回提取的数组

4.4K60
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【JavaScript】内置对象 - 数组对象 ② ( 数组添加元素 - push 方法 unshift 方法 | 数组删除元素 - pop 方法 shift 方法 )

    /Array 一、添加数组元素 1、添加数组元素 - push() 调用 Array 数组对象 的 push() 方法 可以在数组的 尾部 添加指定元素 , 返回新数组长度 , 语法如下 : push(...) push(element0) push(element0, element1) push(element0, element1, /* … ,*/ elementN) 该方法的参数可以传入 0 到...元素 | 数组筛选 | 删除数组元素 | 翻转数组元素 | 数组元素冒泡排序 ) 一、JavaScript 数组案例 2、数组筛选 中 介绍了数组 筛选 , 将筛选出的元素放入新数组 , 当时使用的方法是...索引位置设置数组元素即可 newArr[newArr.length] = arr[i]; } } 在本博客中可以使用 push...方法 , 将筛选出的元素放入新数组的末尾 ; 2、代码示例 代码示例 : <!

    17510

    JavaScript数组方法中 push() 和 unshift() 的区别

    在给数组push的时候发现一个新的方法unshift() 就找了一下区别: push() push() 方法(在数组结尾处)向数组添加一个新的元素: var webKnowledge = ["HTML"...", "CSS", "JS", "VUE", "REACT"] push() 方法返回新数组的长度: var webKnowledge = ["HTML", "CSS", "JS", "VUE"]; const...x = webKnowledge.push("REACT"); // 新数组的长度 //x 的值为 5 unshift() 方法 unshift() 方法(在开头)向数组添加新元素,并“...() 方法返回新数组的长度: var webKnowledge = ["HTML", "CSS", "JS", "VUE"]; const x = webKnowledge.unshift("REACT..."); // 新数组的长度 //x 的值为 5 区别 相同点: 都可以向数组中添加元素 都会改变数组的长度 都会返回新的长度

    82630

    JavaScript数组方法中 push() 和 unshift() 的区别

    在给数组push的时候发现一个新的方法unshift() 就找了一下区别: push() push() 方法(在数组结尾处)向数组添加一个新的元素: var webKnowledge = ["HTML"...", "CSS", "JS", "VUE", "REACT"] push() 方法返回新数组的长度: var webKnowledge = ["HTML", "CSS", "JS", "VUE"]; const...x = webKnowledge.push("REACT"); // 新数组的长度 //x 的值为 5 unshift() 方法 unshift() 方法(在开头)向数组添加新元素,并..."); // 新数组的长度 //x 的值为 5 区别 相同点: 都可以向数组中添加元素 都会改变数组的长度 都会返回新的长度 不同点: push() 方法是在元素的末尾添加新的元素,unshift...() 方法是在开头添加 push() 方法不会改变原数组中元素的索引,unshift() 会改变原数组中元素的索引 unshift() 比push() 慢,消耗的资源也更高 push() 方法的使用场景和频率比

    86430

    JavaScript数组的常用方法

    数组的方法 1.内置的数组方法 JavaScript数组是一种常见的数据类型,它由多个元素组成。...以下是一些常用的JavaScript数组方法: 方法名 描述 push() 在数组的末尾添加一个或多个元素,并返回新的长度。 pop() 从数组的末尾删除一个元素,并返回被删除的元素。...forEach() 对数组中的每个元素执行给定的函数。 这些方法可以方便地操作和处理JavaScript数组,可以根据实际需求选择使用。...下面是一些使用上述常用方法的 JavaScript 数组示例代码: 1.1 push() 方法: const arr = ['apple', 'banana']; const newLength...5.3 concat() 方法 concat()方法可以将两个或多个数组合并为一个新的数组,用法如下: const arr1 = [1, 2, 3]; const arr2 = [4, 5, 6];

    10310

    如何在JavaScript中使用数组方法:Mutator方法

    大家好,又见面了,我是你们的朋友全栈君。 JavaScript中的数组由元素列表组成。JavaScript有许多有用的内置方法来处理数组。...但是,请务必记住,字符串是不可变的数据类型,这意味着它们无法更改。 另一方面,数组是可变的,这意味着许多数组方法将影响原始数组,而不是数组的副本。...因此,通常最好尽可能使用pop()方法,因为其他数组元素将保持它们的索引位置。 push() mutator方法push()向数组的末尾添加一个或多个新元素。...与shift()一样,可以一次向数组中添加多个逗号分隔的项。 pop()和push()影响数组的结尾,而shift()和unshift()影响数组的开始。...sort()将把更改应用到原始数组。 结论 在本教程中,我们回顾了javascript中的主要mutator数组方法。mutator方法修改它们使用的原始数组,而不是创建类似于copy的访问器方法。

    2.2K10

    如何在JavaScript中使用数组方法:Mutator方法

    JavaScript中的数组由元素列表组成。 JavaScript有许多有用的内置方法来处理数组。 修改原始数组的方法称为mutator方法,返回新值或表示形式的方法称为访问器方法。...另一方面,数组是可变的,这意味着许多数组方法将影响原始数组,而不影响数组的副本。 本教程将通过添加和删除元素,反转,替换或以其他方式修改数组中的元素。...如果对象不是数组,则此方法返回false 。...因此,通常首选的是尽可能使用pop()方法,因为其他数组元素将保持其索引位置。 推() push() mutator方法将一个新的元素添加到数组的末尾。...与shift() ,您可以一次向数组添加多个逗号分隔的项目。 pop()和push()影响数组的结尾,而shift()和unshift()会影响数组的开头。

    1.8K20

    JavaScript 清空数组的方法大全

    JavaScript 清空数组的方法大全 0、常用 // 清空原数组 arr.length = 0; // 指向新的空数组 arr = []; 当需要清空一个 JavaScript 数组时,有多种方法可以选择...1、使用 splice 方法 arr.splice(0, arr.length); 这个方法使用 splice 方法来移除数组的元素,从索引0开始,移除数组的全部内容。...这是一种有效的方法,但请注意,它会修改原始数组。如果你希望保留原始数组,不建议使用这个方法。...4、使用 shift 方法 while (arr.length) { arr.shift(); } 类似于使用 pop 方法,这种方法也使用循环,但它是从数组的开头逐个移除元素,直到数组为空。...如果你不再需要原数组,或者只是需要清空它而不关心原始数据,那么使用 arr = []; 是更简单和高效的方法。在不同情况下,选择适合你需求的方法吧。

    6910

    8种JavaScript比较数组的方法

    在这里,我为前端开发列了一个比较数组的方法清单。介绍一些基于“属性”值对数组进行排序的方法。...可以使用filter()方法来实现。 该filter()方法创建一个新数组,其中所有元素都通过了由提供的功能实现的测试。...我们可以使用map()创建一组新的对象数组,并且可以使用find()方法在更新新值之前匹配特定属性。 该map()方法创建一个新数组,其中填充了在调用数组中每个元素上调用提供的函数的结果。...当我们要比较两个对象数组并根据匹配的值更新特定的属性时,可以使用这些函数。...当我们要比较两个不同的对象数组并得到它们之间的差异时,可以使用这些函数。

    3.4K40

    JavaScript中数组遍历方法array.some()的应用,数组遍历操作的方法

    一、为什么要使用array.some()         因为它简单,好用,清晰,可拓展性强,而且比for、foreach还有非常不常用的while、do...while高级,代码清晰,可读性强,代码就看起来很优雅...二、array.some()的使用与技巧 2.1、基本语法 array.some(callback(element , index , array))          其中element是array...中的每个元素,index是当前元素的索引,array是元素所在的数组本身。...2.3、使用技巧         综上所述,array.some()常用来处理遍历数组元素并且寻找所需要的元素。...,如果有,则输出正数并计算正数的和,如果没有则输出0         难度稍微上调一点,检查数组中是否有任何正数,如果有,则输出正数并计算正数的和,如果没有则输出0: // 示例 2:检查数组中是否有任何正数

    27500

    JavaScript中数组的splice方法和slice方法详解

    JavaScript中数组的splice方法和slice方法详解 最近在做一些算法题,不能说不知道splice方法和slice方法怎么用,但是总是写出来有点点小问题,干脆就整理一下,再试两个小例子写一篇文章...splice方法 splice() 方法通过删除现有元素和/或添加新元素来更改一个数组的内容。...一般使用的格式是这样的 array.splice(start) array.splice(start, deleteCount) array.splice(start, deleteCount, item1...如果start是负数,就倒着从后往前截取 由于splice方法是对原数组进行修改 我们经常用的就是arr.splice(X,X,XXX)这样的形式,而不会把它专门赋值给另一个变量 slice方法 **slice...()** 方法返回一个新的数组对象,这一对象是一个由 begin 和 end 决定的原数组的浅拷贝(包括 begin,不包括end)。

    95900

    JavaScript 中的新数组方法:groupBy

    JavaScript 中的 groupBy 方法是 ECMAScript 2021 官方引入的标准库的一项宝贵补充。它简化了基于指定键或函数对数组元素进行分组的过程。...返回值:groupBy 方法返回一个新的 Map 对象,其中键是应用于每个元素的键函数的唯一值,而值是包含原始数组中相应元素的数组。...groupBy 的优势简洁性:与使用循环和手动操作相比,groupBy 提供了更简洁、可读性更强的方式来实现相同的结果。...可读性:代码变得更加可读,更容易理解,特别是在处理复杂的数据结构时。效率:根据实现方式,groupBy 对于大型数据集而言可能比手动方法更高效。...兼容性groupBy 方法相对较新,尚未被所有浏览器完全支持。然而,它在现代浏览器中得到广泛支持,并且可以在较旧的环境中轻松进行 polyfill。

    58010

    JavaScript 判断空对象、空数组的方法

    就是{}, []比较顽固,两种方法都无效。 二、判定空数组的方法 分析:所谓空数组,就是数组的长度等于0。所以我们的难点就落在了怎么判断一个参数的数据类型是数组了。...我们依旧可以通过isPrototypeOf()方法实现判断一个数据是不是对象。...(obj) && Object.keys(obj).length === 0 其中,Object.keys()方法会返回一个由给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for.....若要兼容IE9以下,可以用 for...in替代,但要注意for...in 会将对象原型链上的属性也枚举出来,所以要借hasOwnProperty()方法来判断是不是对象本身的属性。...在表达式 obj instanceof AFunction 中,检测的是 AFunction.prototype 是否在obj 的原型链中,而不是检测 AFunction 自身。

    29.9K43
    领券