slice,substr和substring的区别

slice和substring接收的是起始位置和结束位置(不包括结束位置:含头不含尾),

substr接收的则是起始位置和所要返回的字符串

例子:

var  test="nihao zhongguo"

document.write(test.slice(4,7))   //o z

document.write(test.substring(4,7))    //o z

document.write(test.substr(4,7))   //o zhong

substr(4,7)表示从字符串的第4个字符开始起,取后面的7个字符,含头含尾。

如果substr(4,-1),后面跟的是负数,那么将取不到值,显示为空。

如果substr(4),表示的是从字符串的第4个字符开始一直到字符串的结束。

document.write(test.slice(2,5)) 显示:hao
slice:提取字符串的一部分,并返回一个新字符串。两个参数,第一个为起始位置,
第二个为终止位置(留头不留尾),如果没有end,就取到末尾。
document.write(test.substring(2,5)) 显示:hao
substring:返回字符串的一个子串。传入参数是起始位置和结束位置。(留头不留尾),

如果没有end,就取到末尾,

如果同时将(4,7)换成(4,-7)

那么slice显示:o z    负数表示从字符串的末尾开始到回来的第几个字符。

substring显示:niha    第4位字符位前的,但是到了起始位置就结束了。

如果同时是(4,4)

那么slice显示:空  没有内容

substring显示:空 没有内容

如果同时是(4)表示从字符串的第四个字符一直到字符串的末尾。

那么slice显示:o zhongguo

substring显示:o zhongguo

如果同时是(4,2)

那么slice显示:空  没有内容  如果后面的值比取得字符串小,并且不是负数,那么slice就取不到字符。

substring显示:ha    表示从第4个字符到第2个字符的内容,同样是含头不含尾。

猜你喜欢

转载自blog.csdn.net/le_oop/article/details/80714387