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个字符的内容,同样是含头不含尾。