substr()-返回字符串中指定位置和长度的子字符串。
substr()函数是Javascript提供的一个标准字符串处理函数,它的主要功能是返回一个字符串中从指定位置开始的,指定长度的子字符串。substr()函数最常用的语法是:
str.substr(start,length);
其中str是要被截取的字符串,start是开始截取的位置,length是要截取的长度。start和length都是非负整数。如果省略length,则被截取的子字符串会一直延伸到原字符串的末尾。
下面是一个实例:
var str = "Hello, World!"; var res = str.substr(7, 5); console.log(res); // World
在这个例子中,我们通过substr函数截取了“Hello, World!”字符串中从第7个字符开始的长度为5的子字符串,即“World”。
substr()函数还有一些其他的特性,下面简单介绍一些常见的用法和注意事项:
1. 如果start是负数,则substr()函数会从字符串的末尾开始计算位置。例如:
var str = "Hello, World!"; var res = str.substr(-6, 5); console.log(res); // World
在这个例子中,我们指定start为-6,它会被计算为字符串的长度减去6,即12-6=6。从位置6开始截取长度为5的字符串,得到的结果仍然是“World”。
2. 如果length是负数,则substr()函数会将length当做0来处理。例如:
var str = "Hello, World!"; var res = str.substr(7, -5); console.log(res); // ""
在这个例子中,我们指定length为-5,函数会将它当做0来处理,因此返回的结果是空字符串。
3. 如果start大于等于字符串的长度,则substr()函数会返回一个空字符串。例如:
var str = "Hello, World!"; var res = str.substr(20, 5); console.log(res); // ""
在这个例子中,我们指定start为20,远超过了字符串的长度12,因此被截取的子字符串是一个空字符串。
4. 如果省略length参数,则被截取的子字符串会一直延伸到原字符串的末尾。例如:
var str = "Hello, World!"; var res = str.substr(7); console.log(res); // World!
在这个例子中,我们没有指定length参数,因此被截取的子字符串会一直延伸到字符串的末尾。得到的结果是“World!”。
总之,substr()函数可以帮助我们快速地截取字符串中的子字符串,对于字符串处理来说非常实用。但是,在使用substr()函数时要注意一些特殊的情况,避免出现意外的结果。
