JavaScript 中的endsWith:综合指南
检查字符串是否以特定字符结尾是 JavaScript 编程中的常见任务。虽然 JavaScript 不提供原生的endsWith()方法,但有几种有效的方法可以实现此功能。
选项 1:使用indexOf()
indexOf( ) 方法可用于定位字符串中第一次出现的子字符串。通过传递子字符串和起始位置作为参数,indexOf() 从指定位置开始搜索子字符串。要检查字符串是否以字符结尾,可以将字符作为子字符串传递,并将字符串的长度减去字符的长度作为起始位置。
例如:
var str = "mystring#"; var char = "#"; var index = str.indexOf(char, str.length - char.length); if (index !== -1) { console.log("String ends with the character."); }
选项 2:使用 substr()
substr() 方法可以从基于字符串的字符串中提取子字符串在指定的起始位置和长度上。要检查字符串是否以字符结尾,可以使用 substr() 提取最后一个字符并将其与所需字符进行比较。
例如:
var str = "mystring#"; var char = "#"; var lastChar = str.substr(str.length - char.length, char.length); if (lastChar === char) { console.log("String ends with the character."); }
选项3:使用正则表达式
正则表达式为文本字符串中的模式匹配提供了强大的工具。要检查字符串是否以字符结尾,您可以创建一个正则表达式,该字符前面带有脱字号 (^) 以指示字符串的结尾。
例如:
var str = "mystring#"; var char = "#"; var regex = new RegExp(char + "$"); if (regex.test(str)) { console.log("String ends with the character."); }
ES6 支持
在 ES6 (ECMAScript 2015) 中,原生引入 String.prototype.endsWith() 方法是为了简化检查字符串是否以字符结尾的过程。
例如:
var str = "mystring#"; var char = "#"; if (str.endsWith(char)) { console.log("String ends with the character."); }
结论
虽然 JavaScript 中有多种方法可以检查字符串是否以某个字符结尾,但 ES6 中的原生endsWith() 方法是最常用的。简洁高效的选择。但是,如果您需要支持较旧的浏览器,则需要实现上面讨论的替代方法之一。
以上是如何在 JavaScript 中检查字符串是否以字符结尾?的详细内容。更多信息请关注PHP中文网其他相关文章!