iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >concat是不是es6语法
  • 105
分享到

concat是不是es6语法

2023-07-04 10:07:27 105人浏览 独家记忆
摘要

这篇文章主要介绍“concat是不是es6语法”,在日常操作中,相信很多人在concat是不是es6语法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”concat是不是es6语法”的疑惑有所帮助!接下来,请跟

这篇文章主要介绍“concat是不是es6语法”,在日常操作中,相信很多人在concat是不是es6语法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”concat是不是es6语法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

concat不是es6语法,它是es5时就有的,优点是兼容性高,不需要转译。concat方法用于多个数组的合并,使用语法“原数组对象.concat(新值)”;该方法可接受数组参数,也可接受其他类型的值作为参数。concat方法会将新数组的成员,添加到原数组成员的后部,然后返回一个新数组,原数组不变。

concat不是es6语法,它是es5时就有的。

ES5 数组方法concat()

concat方法用于多个数组合并。它将新数组的成员,添加到原数组成员的后部,然后返回一个新数组,原数组不变

  • 请注意,concat()方法并没有修改当前Array,而是返回了一个新的Array

['hello'].concat(['world'])// ["hello", "world"]['hello'].concat(['world'], ['!'])// ["hello", "world", "!"][].concat({a: 1}, {b: 2})// [{ a: 1 }, { b: 2 }][2].concat({a: 1})// [2, {a: 1}]

除了数组作为参数,concat也接受其他类型的值作为参数,添加到目标数组尾部。

[1, 2, 3].concat(4, 5, 6)// [1, 2, 3, 4, 5, 6]

  • 实际上,concat()方法可以接收任意个元素和Array,并且自动把Array拆开,然后全部添加到新的Array里。即如果要进行concat() 操作的参数是数组,那么添加的是数组中的元素,而不是数组。

var arr = ['A', 'B', 'C'];arr.concat(1, 2, [3, 4]); // ['A', 'B', 'C', 1, 2, 3, 4]

注意:concat只会拉平数组参数一次,不会拉平两次

arr.concat([1, [2, 3]]); // [1, 2, 3, 1, [2, 3]]

  • 如果数组成员包括对象,concat方法返回当前数组的一个浅拷贝。所谓“浅拷贝”,指的是新数组拷贝的是对象的引用

var obj = { a: 1 };var oldArray = [obj];var newArray = oldArray.concat();obj.a = 2;newArray[0].a // 2

上面代码中,原数组包含一个对象,concat方法生成的新数组包含这个对象的引用。所以,改变原对象以后,新数组跟着改变

扩展知识:数组合并的另一种方法

使用ES6扩展运算符合并

const name1 = ['A','B','C'];        const name2 = ['D','E','F'];        const name = [...name1,...name2]        console.log(name);

concat是不是es6语法

对比:ES6扩展运算符...与ES5-concat

concat是es5时就有的,优点是兼容性高,不需要转译

...是es6新出的语法,简化了写法,代码看上去更简洁直观,但实际只是做了封装,底层还是用的原来的方法,如下为babel转译的结果

arr1 = [...arr1, ...arr2];  ↓ 相当于function _toConsumableArray(arr) { if (Array.isArray(arr)) {    for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2;    } else { return Array.from(arr); }}arr1 = [].concat(_toConsumableArray(arr1), arr2);

到此,关于“concat是不是es6语法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: concat是不是es6语法

本文链接: https://www.lsjlt.com/news/344173.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • concat是不是es6语法
    这篇文章主要介绍“concat是不是es6语法”,在日常操作中,相信很多人在concat是不是es6语法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”concat是不是es6语法”的疑惑有所帮助!接下来,请跟...
    99+
    2023-07-04
  • require是不是es6语法
    本篇内容主要讲解“require是不是es6语法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“require是不是es6语法”吧!不是,require是CommonJS规范的模块化语法;而es6...
    99+
    2023-07-04
  • es6 class是不是语法糖
    这篇文章主要介绍了es6 class是不是语法糖的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇es6 class是不是语法糖文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2024-04-02
  • let是不是es6的语法
    这篇文章主要介绍了let是不是es6的语法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇let是不是es6的语法文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2024-04-02
  • class类是不是es6语法
    本文小编为大家详细介绍“class类是不是es6语法”,内容详细,步骤清晰,细节处理妥当,希望这篇“class类是不是es6语法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。class类是es6语法,是es6新增...
    99+
    2023-07-04
  • es6语法是不是一种标准
    本文小编为大家详细介绍“es6语法是不是一种标准”,内容详细,步骤清晰,细节处理妥当,希望这篇“es6语法是不是一种标准”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。es6语法是一种标准。ES6全称是ECMASc...
    99+
    2023-07-04
  • assign是不是es6方法
    这篇文章将为大家详细讲解有关assign是不是es6方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 assign是es6方法。assign...
    99+
    2024-04-02
  • filter是不是es6的方法
    这篇“filter是不是es6的方法”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“filt...
    99+
    2024-04-02
  • map是不是es6中的方法
    这篇文章主要讲解了“map是不是es6中的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“map是不是es6中的方法”吧! m...
    99+
    2024-04-02
  • js map方法是不是es6的
    本文小编为大家详细介绍“js map方法是不是es6的”,内容详细,步骤清晰,细节处理妥当,希望这篇“js map方法是不是es6的”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。map()方法是es6的。在es6...
    99+
    2023-07-04
  • eval是不是es6中的方法
    本文小编为大家详细介绍“eval是不是es6中的方法”,内容详细,步骤清晰,细节处理妥当,希望这篇“eval是不是es6中的方法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 ...
    99+
    2024-04-02
  • es2017是不是es6
    这篇文章主要介绍“es2017是不是es6”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“es2017是不是es6”文章能帮助大家解决问题。 ...
    99+
    2024-04-02
  • es2015是不是es6
    这篇文章主要介绍了es2015是不是es6的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇es2015是不是es6文章都会有所收获,下面我们一起来看看吧。es2015是es6。es全称“ECMAScript”,是...
    99+
    2023-07-04
  • js中filter是不是es6的方法
    这篇“js中filter是不是es6的方法”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“j...
    99+
    2024-04-02
  • promise是不是es6的
    本篇内容主要讲解“promise是不是es6的”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“promise是不是es6的”吧!是的。promise是ECMAScript 6新增的引用类型,表示一...
    99+
    2023-07-04
  • es6是不是框架
    本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。es6不是框架,而是一种JavaScript语言的标准。es6全称ECMAScript6(ECMAScript的第6个版本),是于2015年6月正式发布的...
    99+
    2022-11-22
    javascript ES6
  • foreach是不是es6里的
    本文小编为大家详细介绍“foreach是不是es6里的”,内容详细,步骤清晰,细节处理妥当,希望这篇“foreach是不是es6里的”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。...
    99+
    2024-04-02
  • es6的常用语法是什么
    这篇文章主要介绍“es6的常用语法是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“es6的常用语法是什么”文章能帮助大家解决问题。最常用的ES6特性let, const这两个的用途与var类似,...
    99+
    2023-06-17
  • 数组some和every是不是es6的方法
    今天小编给大家分享一下数组some和every是不是es6的方法的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我...
    99+
    2024-04-02
  • es6的class是不是函数
    本篇内容介绍了“es6的class是不是函数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作