#JavaScript#substring()和slice()和splice()和split()和substr()的区别

一、substring()是截取字符串String

var s = 'hello, world';

s.substring(0, 5); // 从索引0开始到5(不包括5),返回'hello';

s.substring(7); // 从索引7开始到结束,返回'world';

二、slice()是截取数组或字符串Array 和String

var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];

arr.slice(0, 3); // 从索引0开始,到索引3结束,但不包括索引3: ['A', 'B', 'C'];

arr.slice(3); // 从索引3开始到结束: ['D', 'E', 'F', 'G'];

如果不给slice()传递任何参数,它就会从头到尾截取所有元素。利用这一点,我们可以很容易地复制一个Array:

var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];

var arr1 = arr.slice();

arr1; // ['A', 'B', 'C', 'D', 'E', 'F', 'G'];

arr1 === arr; // false

两者原理相同,针对使用的对象不同。

三、splice()向/从数组中添加/删除项目,然后返回被删除的项目。Array

arrayObject.splice(index, howmany, ite1,......, itemxX)

splice()方法可删除从Index处开始的零个或者多个元素,并且用参数列表中声明的一个或者多个值来替换那些被删除的元素。如果从arrayObject中删除了元素,则返回的是包含被删除的元素的数组。

 var array = ['apple','orange','banana','tomato']
 
 array.splice(0,3,'ppp','ddd')	//['apple','orange','banana']
 
 array	//['ppp','ddd','tomato']

四、split()字符串分割成字符串数组String

stringObject.split(seperator, howmany)

String.split()执行的操作与Array.join执行的操作是相反的。

 var str = "Hello,can I help you"
 
 str.split(',')	//["Hello","can I help you"]

五、substr()字符串中抽取从start下表开始的指定书目的字符

stringObject.substr(start, length)

 var str = "Hello,liming"
 
 str.substr(1,3)	//"ell"
 
 str.substr(-3,3)	//"ing"

猜你喜欢

转载自blog.csdn.net/G_wendy/article/details/81217149