javascript string 方法均不改变原字符串,只返回新值;涵盖查(includes、indexof等)、取(slice、charat等)、改(tolowercase、replace等)、分(split、match等)四类高频操作。

JavaScript 中 String 类型的所有方法都不改变原字符串,只返回新值。掌握以下高频、实用的方法,基本覆盖 90% 的日常文本处理场景。
查:判断存在性与定位位置
用于校验、条件分支或提取上下文。
-
includes(sub) 返回布尔值,适合敏感词检测、表单校验等,如
"user@example.com".includes("@") -
indexOf(sub, from) 返回首次匹配索引(-1 表示未找到),支持指定起始位置,如
"hello world".indexOf("o", 5)→ 7 -
lastIndexOf(sub, from) 从右往左找最后一次出现的位置,常用于提取文件扩展名:
filename.lastIndexOf(".") -
startsWith(prefix, pos) 和 endsWith(suffix, len) 支持指定检查范围,比如
url.startsWith("https://", 0)或str.endsWith(".jpg", 10)
取:截取与访问单个字符
获取子串或特定位置内容时,优先用 slice(),它兼容负索引且行为稳定。
Java JDK 25 来自 OpenJDK 官方归档,版本为 JDK 25,本条下载地址已指向官方 Windows x64 zip 安装包直链,适合调试旧项目或兼容旧版 Java 运行环境。
-
slice(start, end) 左闭右开,支持负数:
"abcdef".slice(-3)→ "def",.slice(1, -1)去首尾 -
charAt(index) 安全获取字符,超出范围返回空字符串;比
str[index]兼容更老浏览器(如 IE7) -
charCodeAt(index) 获取 Unicode 编码,可用于区分字母/数字/符号,如
"A".charCodeAt(0) === 65 -
substring(from, to) 不支持负索引,且自动交换参数顺序(
substring(5,2)等价于substring(2,5))
改:格式转换与内容替换
注意大小写转换和替换默认只作用于第一个匹配项。
- toLowerCase() / toUpperCase() 常用于统一比较,如登录用户名不区分大小写校验
-
replace(search, newStr) 默认仅替换首个匹配;要全局替换必须用正则:
str.replace(/a/g, "A") - replaceAll(search, newStr) 直接全局替换字符串(无需正则),但需确保运行环境支持(ES2021+)
-
trim() 清除首尾空白(含空格、换行、制表符);
trimStart()和trimEnd()分别处理单侧
分:拆解为数组或结构化提取
转成数组后可链式调用 map、filter 等,大幅提升处理灵活性。
-
split(separator, limit) 按分隔符切分:
"a,b,c".split(",")→["a","b","c"];用正则更健壮,如str.split(/\s+/) -
split("") 拆成单字符数组,适合反转:
[...str].reverse().join("") -
match(regexp) 提取符合规则的内容,如
str.match(/\d+/g)获取所有数字数组,match(/(\w+)@(\w+)/)提取邮箱用户名和域名 -
padStart(len, pad) / padEnd(len, pad) 补位常用在日期、编号格式化,如
"9".padStart(2, "0")→ "09"
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










