检查一个字符串(str
)是否以指定的字符串(target
)结尾。
如果是,返回true;如果不是,返回false。
/*思路 字符串长度str.length等于字符串位置str.indexOf() + 字符串长度target.length; 为避免字符串中重复的target所以应从后往前搜索lastIndexOf() ; */ function confirmEnding(str, target) { if(str.lastIndexOf(target)+target.length!=str.length){ return false; } return true; } confirmEnding("Bastian", "n");
思路
我们来看看 substr()
的用法。
语法:
str.substr(start[, length])
start 是一个字符的索引。首字符的索引为 0,最后一个字符的索引为 字符串的长度减去1。substr 从 start 位置开始提取字符,提取 length 个字符(或直到字符串的末尾)。
如果 start 为正值,且大于或等于字符串的长度,则 substr 返回一个空字符串。
如果 start 为负值,则 substr 把它作为从字符串末尾开始的一个字符索引。如果 start 为负值且 abs(start) 大于字符串的长度,则 substr 使用 0 作为开始提取的索引。注意负的 start 参数不被 Microsoft JScript 所支持。
这道题目使用 substr()
的负参数运用可解决。
function confirmEnding(str, target) { // "Never give up and good luck will find you." return str.substr(-target.length,target.length) === target; }