字符串/数组的截取

字符串的截取方法

除第一种方法返回的是数组外,其他的都是字符串,所有方法都不改变原字符串。

1、split(); 实用一个置顶的分割符把字符串分割存储到数组,返回的是数组
str.split(separator, howmany);
separator: 必需。字符串或正则表达式,从该参数指定的地方分割。若为"",表示将字符串每个字符分隔开。
howmany: 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。

var str = "jpg|png|gif";
var arr = str.split("|");
console.log(arr);// ["jpg", "png", "gif"];
console.log(str.split("", 6));//["j", "p", "g", "|", "p", "n"]

2、substring(); 提取字符串中介于两个指定下标之间的字符。
str.substring(start, stop);
start: 必需。一个非负的整数,规定要提取的子串第一个字符的位置。
stop: 可选。一个非负的整数,必要提取的子串的最后一个字符位置+1。如省略,则表示提取到字符串的结尾。

var str = "abcdefghijklmnopqrstuvwxyz";//取出defghi
console.log(str.substring(3, 9));

3、substr(start [, length]); 用于返回一个从指定位置开始的指定长度的子字符串。
start: 必需。
length: 可选。如果为0或者负数,则返回空字符串,若没有,则表示延续到字符串的最后。

var str = "abcdefghijklmnopqrstuvwxyz";//取出l之后的6个元素,不包含l
console.log(str.substr(12, 6));//mnopqr

4、slice(start, stop);
start: 必需。截取的字符串的第一个字符的下标,保留后面的。
stop: 可选。截取到第几位,若为负数,则表示从后往前数的第几位;若没有,则表示截取到最后。

	var str = "abcdefghijklmnopqrstuvwxyz";
	console.log(str.slice(3, 5));//de
	console.log(str.slice(20, -2));//uvwx

数组的截取

1、slice(start, stop);
与字符串的截取雷同,不改变原数组;
2、splice() ; 向从数组中删除/添加项目,然后返回被删除的项目。(对原数组进行了修改
arr.splice(index, num, item1, item2, …, itemX);
index: 位置;num: 删除数量;item1…:添加内容
返回值: 含有被删除元素的数组

var arr = ["Mary", "HanMeimei", "LiMing", "JingJiang"];
var newArr = arr.splice(2, 1, "newCreate1","newCreate2");
console.log(newArr);//["LiMing"]
console.log(arr);//["Mary", "HanMeimei", "newCreate1", "newCreate2", "JingJiang"]
发布了5 篇原创文章 · 获赞 0 · 访问量 453

猜你喜欢

转载自blog.csdn.net/weixin_43743804/article/details/88996907