数组slice/splice
slice()
接受一或两个参数,返回起始到结束位置的新数组。slice()不会影响原数组。
在只有一个参数的情况下,slice()方法从该参数指定位置起到当前数组末尾所有项。
- var arr1 = [1,2,3,4,5];
- var arr2 = arr1.slice(2);
- alert(arr1); //[1,2,3,4,5]
- alert(arr2); //[3,4,5]
如果接受了两个参数:该方法返回起始位置到结束位置之间(不包括结束位置)指定的项。
- var arr1 = [1,2,3,4,5];
- var arr2 = arr1.slice(2, 3);
- console.log(arr2); //[3]
如果参数中有个是负数,则用数组长度加上该附属来确定相应的位置。
- var arr1 = [1,2,3,4,5];
- var arr2 = arr1.slice(2, -1); //相当于arr1.slice(2,4);
- console.log(arr2); //[3, 4]
如果结束位置小于起始位置,则返回空数组。
- var arr1 = [1,2,3,4,5];
- var arr2 = arr1.slice(3, -3);
- console.log(arr2); //[]
splice()
返回删除的项,始终都会返回一个数组,该数组中包含从原始数组中删除的项(如果没有删除任何项,则返回一个空数组)。
删除:删除任意数量的项,指定2个参数:删除的起始位置和要删除的项数。
- var arr1 = [1,2,3,4,5];
- var arr2 = arr1.splice(0, 2);
- console.log(arr1); //[3, 4, 5]
- console.log(arr2); //[1, 2]
插入:向指定位置插入任意数量的项,指定三个参数:起始位置,0,新插入的项。
- var arr1 = [1,2,3,4,5];
- var arr2 = arr1.splice(2, 0, 6, 7);
- console.log(arr1); //[1, 2, 6, 7, 3, 4, 5]
- console.log(arr2); //[]
替换:向指定位置插入任意数量的项,且删除任意数量的项。指定3个参数:起始位置、不为0的项数、要插入任意数量的项。
- var arr1 = [1,2,3,4,5];
- var arr2 = arr1.splice(2, 2, 6, 7);
- console.log(arr1); //[1, 2, 6, 7, 5]
- console.log(arr2); //[3, 4]
字符串slice/substring/substr
slice()
提取字符串的某个部分,并以新的字符串返回被提取的部分,不改变原字符串。
只有一个参数,则返回从该参数指定的位置到当前字符串的部分。
- var str1 = "12345";
- var str2 = str1.slice(2);
- console.log(str1); //12345
- console.log(str2); //345
如果是两个参数,则返回起始与结束参数(不包括结束参数)所指定的位置之间的部分。
- var str1 ="12345";
- var str2 = str1.slice(2, 4);
- alert(str1); //12345
- alert(str2); //34
如果参数中,有负数存在,将字符串长度加上负数。
- var str1 ="12345";
- var str2 = str1.slice(2, -1);
- alert(str1); //12345
- alert(str2); //34
如果结束位置小于起始位置,返回空字符串。
- var str1 ="12345";
- var str2 = str1.slice(3, 2);
- alert(str1); //12345
- alert(str2); //
substring()
提取字符串中介于两个指定下标之间的字符,不改变原字符串。
如果只有一个参数,则返回从该参数指定的位置到当前字符串结束的部分。
- var str1 = "12345";
- var str2 = str1.substring(3);
- console.log(str1); //"12345"
- console.log(str2); //"45"
如果两个参数,则返回从该参数指定的位置到当前字符串的部分。
- var str1 = "12345";
- var str2 = str1.substring(3, 5);
- console.log(str2); //"45"
如果第二个参数比第一个参数大,自动回交换起始结束位置。如果任一参数小于 0 或为 NaN,则被当作 0。
- var str1 = "12345";
- var str2 = str1.substring(3, 2);
- console.log(str2); //"3"
substr()
在字符串中抽取从 start 下标开始的指定数目的字符。
如果只有一个参数,则返回从该参数指定的位置到当前字符串的部分。
- var str1 = "12345";
- var str2 = str1.substr(2);
- console.log(str1); //12356
- console.log(str2); //345
如果有两个参数,第二个参数代表需截取的位数不能为负数·。第一个参数若为负数,将其于字符串长度相加。
- var str1 = "12345";
- var str2 = str1.substr(-3, 2);
- console.log(str1); //12356
- console.log(str2); //34
这三个方法都会返回被操作字符串的一个子字符串,而且也都接受一或两个参数。第一个参数指定子字符串的开始位置;slice()和substring()的第二个参数指定的是子字符串最后一个字符后面的位置,substr()的第二个参数指定的则是返回的字符个数。如果没有给这些方法传递第二个参数,则将字符串的长度作为结束位置。
1 0
- 深究JavaScript——slice/splice/substring/substr
- JavaScript substr,substring,slice,splice
- Javascript—substring/slice/substr
- splice() 、slice() 、substr() 、substring()
- substring,substr,slice,splice,split
- js substr substring slice splice
- slice()/substr()/substring()/splice()比较
- 区分:subString/ substr / slice / splice
- javascript中substr,substring,slice.splice的区别
- javascript中substr,substring,slice,splice介绍以及区别
- slice,splice,substr和substring的区别
- JS(slice,splice,split,substring,substr)小记
- 截取 substring(),substr(),slice(),splice(),split()
- split,splice,slice,substr,substring使用方法总结
- Javascript slice() ,substr() 与substring()
- substring和substr,slice和splice傻傻分不清楚?进来!
- substr()substring()slice()splice()
- substring和substr,slice和splice的区分
- 鼠标移上去的样式
- android自定义选择开关switchButon
- 根据后台返回的日期排序数据
- salesforce开发2---sObject创建(salesforce中的表创建)
- php curl获取https页面内容, 不直接输出返回结果的设置
- 深究JavaScript——slice/splice/substring/substr
- 追着嘟嘟学c#系列入门第四篇-----c#的运算符和表达式【蓝鸥出品】
- 移动方法
- Bonjour_笔记
- [js] ES6
- 将自己数据转化为cifar10支持的lmdb
- Convolution Neural Network (CNN) 原理与实现
- 学习shell前的一些基础知识
- 热更新--android与lua相互通信++++++++what