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 相关文章推荐
asp.net HttpHandler实现图片防盗链
Nov 09 Javascript
Json2Template.js 基于jquery的插件 绑定JavaScript对象到Html模板中
Oct 29 Javascript
js定时器(执行一次、重复执行)
Mar 07 Javascript
推荐一个封装好的getElementsByClassName方法
Dec 02 Javascript
JavaScript中window.open用法实例详解
Apr 15 Javascript
Node.js编写爬虫的基本思路及抓取百度图片的实例分享
Mar 12 Javascript
Angular下H5上传图片的方法(可多张上传)
Jan 09 Javascript
Django1.7+JQuery+Ajax验证用户注册集成小例子
Apr 08 jQuery
仿淘宝JSsearch搜索下拉深度用法
Jan 15 Javascript
vue watch普通监听和深度监听实例详解(数组和对象)
Aug 16 Javascript
js验证身份证号码记录的方法
Apr 26 Javascript
微信小程序调用后台service教程详解
Nov 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
类的另类用法--数据的封装
2006/10/09 PHP
Yii2基于Ajax自动获取表单数据的方法
2016/08/10 PHP
php版微信自定义回复功能示例
2016/12/05 PHP
轻松实现php文件上传功能
2017/02/17 PHP
yii插入数据库防并发的简单代码
2017/05/27 PHP
thinkPHP5分页功能实现方法分析
2017/10/25 PHP
IE与firefox下Dhtml的一些区别小结
2009/12/02 Javascript
javascript delete 使用示例代码
2010/03/29 Javascript
自写的一个jQuery圆角插件
2010/10/26 Javascript
js异常捕获方法介绍
2013/04/10 Javascript
JS打印组合功能
2016/08/04 Javascript
详解angularjs中的隔离作用域理解以及绑定策略
2017/05/31 Javascript
详解vue-cli 脚手架项目-package.json
2017/07/04 Javascript
js实现加载页面就自动触发超链接的示例
2017/08/31 Javascript
Vue.js分页组件实现:diVuePagination的使用详解
2018/01/10 Javascript
微信小程序日历/日期选择插件使用方法详解
2018/12/28 Javascript
详解Django中Request对象的相关用法
2015/07/17 Python
python画图--输出指定像素点的颜色值方法
2019/07/03 Python
Python Django Cookie 简单用法解析
2019/08/13 Python
一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系
2020/07/03 Python
Visual Studio Code搭建django项目的方法步骤
2020/09/17 Python
详解淘宝H5 sign加密算法
2020/08/25 HTML / CSS
Russell Stover巧克力官方网站:美国领先的精美巧克力制造商
2016/11/27 全球购物
美国波西米亚风格服装品牌:Show Me Your Mumu
2018/01/05 全球购物
巴西电子产品购物网站:Saldão da Informática
2018/01/09 全球购物
Daisy London官网:英国最大的首饰集团IBB旗下
2019/02/28 全球购物
JAVA软件工程师测试题
2014/07/25 面试题
医学毕业生自我鉴定
2013/10/30 职场文书
幼儿园义卖活动方案
2014/01/17 职场文书
演讲比赛策划方案
2014/06/11 职场文书
大学生国庆节65周年演讲稿范文
2014/09/25 职场文书
离婚协议书样本
2015/01/26 职场文书
乡镇科协工作总结2015
2015/05/19 职场文书
爱国主义主题班会
2015/08/14 职场文书
大学生先进个人主要事迹材料
2015/11/04 职场文书
2016年小学生清明节广播稿
2015/12/17 职场文书