javascript中不易分清的slice,splice和split三个函数


Posted in Javascript onMarch 29, 2016

每每见到这三个函数,我都会很懵,一定要到网上搜搜;今天,恰巧又见到了它们,所以想必是时候为它们做个笔记啦

1.slice(数组)

用法:array.slice(start,end)

解释:该方法是对数组进行部分截取,并返回一个数组副本;参数start是截取的开始数组索引,end参数等于你要取的最后一个字符的位置值加上1(可选)

//如果不传入参数二,那么将从参数一的索引位置开始截取,一直到数组尾
var a=[1,2,3,4,5,6];
var b=a.slice(0,3);  //[1,2,3]
var c=a.slice(3);    //[4,5,6]

//如果两个参数中的任何一个是负数,array.length会和它们相加,试图让它们成为非负数,举例说明:
//当只传入一个参数,且是负数时,length会与参数相加,然后再截取
var a=[1,2,3,4,5,6];
var b=a.slice(-1);  //[6]

//当只传入一个参数,是负数时,并且参数的绝对值大于数组length时,会截取整个数组
var a=[1,2,3,4,5,6];
var b=a.slice(-6);  //[1,2,3,4,5,6]
var c=a.slice(-8);  //[1,2,3,4,5,6]

//当传入两个参数一正一负时,length也会先于负数相加后,再截取
var a=[1,2,3,4,5,6];
var b=a.slice(2,-3);  //[3]

//当传入一个参数,大于length时,将返回一个空数组
var a=[1,2,3,4,5,6];
var b=a.slice(6);//[]

2.slice(字符串)

用法:string.slice(start,end)

解释:slice方法复制string的一部分来构造一个新的字符串,用法与参数匀和数组的slice方法一样;end参数等于你要取的最后一个字符的位置值加上1

//举个简单的例子
var a="i am a boy";
var b=a.slice(0,6);  //"i am a"

3.splice(数组)

用法:array.splice(start,deleteCount,item...)

解释:splice方法从array中移除一个或多个数组,并用新的item替换它们。参数start是从数组array中移除元素的开始位置。参数deleteCount是要移除的元素的个数。

如果有额外的参数,那么item会插入到被移除元素的位置上。它返回一个包含被移除元素的数组。

//举一个简单的例子
var a=['a','b','c'];
var b=a.splice(1,1,'e','f');  //a=['a','e','f','c'],b=['b']

4.split(字符串)

用法:string.split(separator,limit)

解释:split方法把这个string分割成片段来创建一个字符串数组。可选参数limit可以限制被分割的片段数量。separator参数可以是一个字符串或一个正则表达式。如果

separator是一个空字符,会返回一个单字符的数组。

//再举一个简单的例子
var a="0123456";
var b=a.split("",3);  //b=["0","1","2"]

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
document节点对象的获取方式示例介绍
Dec 24 Javascript
Javascript堆排序算法详解
Dec 03 Javascript
js实现仿QQ秀换装效果的方法
Mar 04 Javascript
JavaScript函数内部属性和函数方法实例详解
Mar 17 Javascript
详解JavaScript中基于原型prototype的继承特性
May 05 Javascript
Bootstrap fileinput文件上传预览插件使用详解
May 16 Javascript
JavaScript之map reduce_动力节点Java学院整理
Jun 29 Javascript
React Native之TextInput组件解析示例
Aug 22 Javascript
微信小程序实现点击文字页面跳转功能【附源码下载】
Dec 12 Javascript
node简单实现一个更改头像功能的示例
Dec 29 Javascript
手把手15分钟搭一个企业级脚手架
Sep 16 Javascript
JavaScript流程控制(分支)
Dec 06 Javascript
分析js闭包引起的事件注册问题
Mar 29 #Javascript
使用postMesssage()实现iframe跨域页面间的信息传递
Mar 29 #Javascript
Angularjs实现多个页面共享数据的方式
Mar 29 #Javascript
jQuery ajax请求返回list数据动态生成input标签,并把list数据赋值到input标签
Mar 29 #Javascript
JavaScript面向对象程序设计教程
Mar 29 #Javascript
jQuery实现图片加载完成后改变图片大小的方法
Mar 29 #Javascript
Web前端开发工具——bower依赖包管理工具
Mar 29 #Javascript
You might like
Mysql的GROUP_CONCAT()函数使用方法
2008/03/28 PHP
ThinkPHP模板比较标签用法详解
2014/06/30 PHP
PHP读取大文件的多种方法介绍
2016/04/04 PHP
php截取视频指定帧为图片
2016/05/16 PHP
PHP实现搜索时记住状态的方法示例
2018/05/11 PHP
document.all还是document.getElementsByName?
2006/07/21 Javascript
Javascript无阻塞加载具体方式
2013/06/28 Javascript
jquery插件开发之实现jquery手风琴功能分享
2014/03/10 Javascript
基于Bootstrap和jQuery构建前端分页工具实例代码
2016/11/23 Javascript
Bootstrap栅格系统学习笔记
2016/11/25 Javascript
详解nodejs操作mongodb数据库封装DB类
2017/04/10 NodeJs
JS实现前端缓存的方法
2017/09/21 Javascript
基于js文件加载优化(详解)
2018/01/03 Javascript
jQuery简单实现的HTML页面文本框模糊匹配查询功能完整示例
2018/05/09 jQuery
微信小程序tabbar底部导航
2018/11/05 Javascript
js实现滑动进度条效果
2020/08/21 Javascript
[04:32]玩具屠夫中文语音节选
2020/08/23 DOTA
利用Python查看目录中的文件示例详解
2017/08/28 Python
django实现登录时候输入密码错误5次锁定用户十分钟
2017/11/05 Python
JSONLINT:python的json数据验证库实例解析
2017/11/28 Python
Python星号*与**用法分析
2018/02/02 Python
纯用NumPy实现神经网络的示例代码
2018/10/24 Python
Python+OpenCV+图片旋转并用原底色填充新四角的例子
2019/12/12 Python
Python3使用xlrd、xlwt处理Excel方法数据
2020/02/28 Python
Python如何在main中调用函数内的函数方式
2020/06/01 Python
浅谈keras中的keras.utils.to_categorical用法
2020/07/02 Python
Python request post上传文件常见要点
2020/11/20 Python
PHP使用Redis队列执行定时任务实例讲解
2021/03/24 PHP
请假条怎么写
2014/04/10 职场文书
四风问题原因分析及整改措施
2014/10/24 职场文书
广告业务员岗位职责
2015/02/13 职场文书
旅游安全责任协议书
2016/03/22 职场文书
关于html选择框创建占位符的问题
2021/06/09 HTML / CSS
教你怎么用Python selenium操作浏览器对象的基础API
2021/06/23 Python
利用Python实现Picgo图床工具
2021/11/23 Python
在 Python 中利用 Pool 进行多线程
2022/04/24 Python