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 相关文章推荐
Javascript 获取字符串字节数的多种方法
Jun 02 Javascript
JavaScript入门之对象与JSON详解
Oct 21 Javascript
使用jquery解析XML示例代码
Sep 05 Javascript
JavaScript中的eval()函数使用介绍
Dec 31 Javascript
js中数组结合字符串实现查找(屏蔽广告判断url等)
Mar 30 Javascript
浅谈JavaScript中promise的使用
Jan 11 Javascript
Bootstrap Table使用整理(一)
Jun 09 Javascript
VUE利用vuex模拟实现新闻点赞功能实例
Jun 28 Javascript
利用JS实现scroll自定义滚动效果详解
Oct 17 Javascript
Vue2.0学习之详解Vue 组件及父子组件通信
Dec 12 Javascript
jQuery中可见性过滤器简单用法示例
Mar 31 jQuery
基于javascript实现贪吃蛇小游戏
Nov 25 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
echo(),print(),print_r()之间的区别?
2006/11/19 PHP
如何使用PHP中的字符串函数
2006/11/24 PHP
判断是否为指定长度内字符串的php函数
2010/02/16 PHP
PHP+jQuery 注册模块的改进(三):更新到Smarty3.1
2014/10/14 PHP
PHP使用反射机制实现查找类和方法的所在位置
2016/04/22 PHP
Firefox+FireBug使JQuery的学习更加轻松愉快
2010/01/01 Javascript
javascript学习笔记(十五) js间歇调用和超时调用
2012/06/20 Javascript
javascript中window.event事件用法详解
2012/12/11 Javascript
js的隐含参数(arguments,callee,caller)使用方法
2014/01/28 Javascript
javascript日期格式化示例分享
2014/03/05 Javascript
Vue.js报错Failed to resolve filter问题的解决方法
2016/05/25 Javascript
JS框架之vue.js(深入三:组件1)
2016/09/29 Javascript
微信小程序实现跟随菜单效果和循环嵌套加载数据
2017/11/21 Javascript
微信小程序使用modal组件弹出对话框功能示例
2017/11/29 Javascript
微信小程序 wx:for遍历循环使用实例解析
2019/09/09 Javascript
vue实现百度语音合成的实例讲解
2019/10/14 Javascript
Vue通过getAction的finally来最大程度避免影响主数据呈现问题
2020/04/24 Javascript
浅谈vue 多个变量同时赋相同值互相影响
2020/08/05 Javascript
python中django框架通过正则搜索页面上email地址的方法
2015/03/21 Python
python中kmeans聚类实现代码
2018/02/23 Python
详解python多线程、锁、event事件机制的简单使用
2018/04/27 Python
详解Python匿名函数(lambda函数)
2019/04/19 Python
python实现的多任务版udp聊天器功能案例
2019/11/13 Python
opencv+python实现鼠标点击图像,输出该点的RGB和HSV值
2020/06/02 Python
记一次django内存异常排查及解决方法
2020/08/07 Python
SQL Server的固定数据库角色都有哪些?对应的服务器权限有哪些?
2013/05/18 面试题
传承焦裕禄精神思想汇报2014
2014/09/10 职场文书
在校大学生自我评价范文
2014/09/12 职场文书
学校党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
环卫处个人工作总结
2015/03/04 职场文书
教师个人教学反思
2016/02/23 职场文书
2016年劳模先进事迹材料
2016/02/25 职场文书
2019年警察入党转正申请书最新范文
2019/09/03 职场文书
用Python监控你的朋友都在浏览哪些网站?
2021/05/27 Python
pycharm无法安装cv2模块问题
2022/05/20 Python
Redis Lua脚本实现ip限流示例
2022/07/15 Redis