ES6中Array.copyWithin()函数的用法实例详解


Posted in Javascript onSeptember 16, 2017

ES6为Array增加了copyWithin函数,用于操作当前数组自身,用来把某些个位置的元素复制并覆盖到其他位置上去。

Array.prototype.copyWithin(target, start = 0, end = this.length)

该函数有三个参数。

target:目的起始位置。

start:复制源的起始位置,可以省略,可以是负数。

end:复制源的结束位置,可以省略,可以是负数,实际结束位置是end-1。

例:

把第3个元素(从0开始)到第5个元素,复制并覆盖到以第1个位置开始的地方。

下面的红色块是复制目标的起始位置,黄色块为复制的源。

const arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
arr1.copyWithin(1, 3, 6)
console.log('%s', JSON.stringify(arr1))

结果:

[1,4,5,6,5,6,7,8,9,10,11]

start和end都是可以省略。

start省略表示从0开始,end省略表示数组的长度值。

目标的位置不够的,能覆盖多少就覆盖多少。

const arr2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
arr2.copyWithin(3)
console.log('%s', JSON.stringify(arr2))

结果:

[1,2,3,1,2,3,4,5,6,7,8]

start和end都可以是负数,负数表示从右边数过来第几个。

const arr3 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
arr3.copyWithin(3, -3, -2)
console.log('%s', JSON.stringify(arr3))

结果:

[1,2,3,9,5,6,7,8,9,10,11]

总结

以上所述是小编给大家介绍的ES6中Array.copyWithin()函数的用法实例详解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
类似GMAIL的Ajax信息反馈显示
Feb 16 Javascript
关于js日期转化为毫秒数“节省20%的效率和和节省9个字符“问题
Mar 01 Javascript
JavaScript中一个奇葩的IE浏览器判断方法
Apr 16 Javascript
JavaScript模块随意拖动示例代码
May 27 Javascript
jQuery插件jquery-barcode实现条码打印的方法
Nov 25 Javascript
JS操作JSON方法总结(推荐)
Jun 14 Javascript
JavaScript制作简单分页插件
Sep 11 Javascript
JS实现搜索框文字可删除功能
Dec 28 Javascript
swiper自定义分页器使用方法详解
Sep 14 Javascript
在Node.js中将SVG图像转换为PNG,JPEG,TIFF,WEBP和HEIF格式的方法
Aug 22 Javascript
VUE页面中通过双击实现复制表格中内容的示例代码
Jun 11 Javascript
全网小程序接口请求封装实例代码
Nov 06 Javascript
JS闭包的几种常见形式实例详解
Sep 16 #Javascript
ES6中Array.find()和findIndex()函数的用法详解
Sep 16 #Javascript
详解JS构造函数中this和return
Sep 16 #Javascript
Angular使用Md5加密的解决方法
Sep 16 #Javascript
使用JS实现气泡跟随鼠标移动的动画效果
Sep 16 #Javascript
EasyUI创建人员树的实例代码
Sep 15 #Javascript
webpack构建react多页面应用详解
Sep 15 #Javascript
You might like
php生成数组的使用示例 php全组合算法
2014/01/16 PHP
thinkphp 中的volist标签在ajax操作中的特殊性(推荐)
2018/01/15 PHP
Laravel Eloquent ORM 实现查询表中指定的字段
2019/10/17 PHP
jQuery EasyUI中对表格进行编辑的实现代码
2010/06/10 Javascript
JavaScript初学者建议:不要去管浏览器兼容
2014/02/04 Javascript
TypeScript 中接口详解
2015/06/19 Javascript
js实现浏览本地文件并显示扩展名的方法
2015/08/17 Javascript
Bootstrap Table从服务器加载数据进行显示的实现方法
2016/09/29 Javascript
使用JS代码实现点击按钮下载文件
2016/11/12 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
微信小程序 Nginx环境配置详细介绍
2017/02/14 Javascript
js中DOM三级列表(代码分享)
2017/03/20 Javascript
react学习笔记之state以及setState的使用
2017/12/07 Javascript
nodejs 生成和导出 word的实例代码
2018/07/31 NodeJs
JS实现字符串翻转的方法分析
2018/08/31 Javascript
浅析JS中什么是自定义react数据验证组件
2018/10/19 Javascript
Js通过AES加密后PHP用Openssl解密的方法
2019/07/12 Javascript
Nest.js 授权验证的方法示例
2021/02/22 Javascript
[03:14]DOTA2斧王 英雄基础教程
2013/11/26 DOTA
[45:59]EG vs OG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
Python找出list中最常出现元素的方法
2016/06/14 Python
python利用paramiko连接远程服务器执行命令的方法
2017/10/16 Python
Python中的函数作用域
2018/05/07 Python
python定向爬虫校园论坛帖子信息
2018/07/23 Python
python 美化输出信息的实例
2018/10/15 Python
django创建最简单HTML页面跳转方法
2019/08/16 Python
Python读取pdf表格写入excel的方法
2021/01/22 Python
日本钓鱼渔具和户外用品网上商店:naturum
2016/08/07 全球购物
男女时尚与复古风格在线购物:RoseGal(全球免费送货)
2017/07/19 全球购物
银行求职推荐信范文
2013/11/30 职场文书
《三顾茅庐》教学反思
2014/04/10 职场文书
中国梦演讲稿教师篇
2014/04/23 职场文书
教师远程培训心得体会
2016/01/09 职场文书
《神奇的鸟岛》教学反思
2016/02/22 职场文书
端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
2021/06/11 Python
vue3中provide && inject的使用
2021/07/01 Vue.js