JavaScript 判断字符串是否包含子字符串的几种方法
这里写目录标题
JavaScript 判断字符串是否包含子字符串,不要只知道 indexOf()
,还可以尝试一下其他写法。
方法 1: 使用 includes()
const str = "Hello, world!";
const substr = "world";
if (str.includes(substr)) {
console.log("包含");
} else {
console.log("不包含");
}
【注】简洁直观,适用于 ES6 及更高版本。
方法 2: 使用 indexOf()
const str = "Hello, world!";
const substr = "world";
if (str.indexOf(substr) !== -1) {
console.log("包含");
} else {
console.log("不包含");
}
【注】兼容性更好,适用于旧版本的 JavaScript。
方法 3: 使用正则表达式
const str = "Hello, world!";
const substr = "world";
if (new RegExp(substr).test(str)) {
console.log("包含");
} else {
console.log("不包含");
}
【注】可用于复杂的模式匹配,不仅限于简单字符串。
方法 4: 使用 search()
const str = "Hello, world!";
const substr = "world";
if (str.search(substr) !== -1) {
console.log("包含");
} else {
console.log("不包含");
}
【注】类似 indexOf
,支持正则表达式。
方法 5: 用 startsWith() 或 endsWith()
如果你只需要判断字符串是否以某个子字符串开头或结尾:
const str = "Hello, world!";
const start = "Hello";
const end = "world!";
if (str.startsWith(start)) {
console.log("字符串以 'Hello' 开头");
}
if (str.endsWith(end)) {
console.log("字符串以 'world!' 结尾");
}
【注】专用于判断起始或结束部分,代码更语义化。
推荐使用
- 如果只需简单判断子字符串,推荐
includes()
- 如果需要兼容旧浏览器,可以使用
indexOf()
- 正则表达式适合更复杂的匹配需求。
原文地址:https://blog.csdn.net/peng2hui1314/article/details/144095129
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!