String
String是对应字符串的引用类型
1. JavaScript 字符
api |
说明 |
String.length |
字符串长度 |
String.charAt |
返回给定索引位置的16位码元,参数传整数 |
String.charCodeAt |
返回给定索引的字符编码 |
String.fromCharCode |
接受多个字符编码拼接成字符串(以上方法均基于16位码元完成,超过16位码元需要用增补平面,每个字符使用两个16位码元被称为代理对) |
String.codePointAt |
指定码元位置识别完整的码点(用来识别既含单码元又包含代理对的) |
String.fromCodePoint |
接受多个码点拼接成字符串 |
2. 字符串操作方法
api |
说明 |
String.concat |
连接字符串,不推荐,推荐使用 + |
String.slice |
截取字符串,非破坏,第一个参数表示字符串开始,第二个参数表示字符串结束(包含),省略第二个参数代表提取到字符串结束。 |
String.substr |
截取字符串,非破坏,第一个参数表示字符串开始,第二个参数表示字符串结束(包含),省略第二个参数代表提取到字符串结束。 |
String.substring |
截取字符串,非破坏,第一个参数表示字符串开始,第二个参数表示返回字符串的数量, 省略第二个参数代表提取到字符串结束 |
3. 字符串位置方法
api |
说明 |
String.indexOf |
正向查找传入的字符串,并返回位置。 第二个参数开始搜索的位置。 |
String.lastIndexOf |
正向查找传入的字符串,并返回位置。第二个参数开始搜索的位置。 |
let stringValue = "Lorem ipsum dolor sit amet consectetur adipisicing elit";
let position = new Array();
let pos = stringValue.indexOf("e");
while (pos > 1) {
position.push(pos);
pos = stringValue.indexOf("e", pos + 1);
}
console.log(position);
4. 字符串包含方法
api |
说明 |
String.startsWith |
从字符串中搜索传入的字符串,返回布尔值。搜索字符串开头。第二个参数表示开始搜索的位置 |
String.endsWith |
从字符串中搜索传入的字符串,返回布尔值。搜索字符串末尾 |
String.includes |
从字符串中搜索传入的字符串,返回布尔值。搜索整个字符串。第二个参数表示开始搜索的位置 |
5. trim() 方法
api |
说明 |
String.trim |
创建字符串副本,删除前后空格符并返回结果。 |
String.trimLeft |
字符串开始清理空格符 |
String.trimRight |
字符串末尾清理空格符 |
6. repeat() 方法
api |
说明 |
String.repeat |
复制字符串,整数参数代表复制多少次,并返回拼接后的结果 |
7. padStart() 和 padEnd() 方法
api |
说明 |
String.padStart |
小于指定长度,在字符串开始填充字符串。第一个参数为填充的长度,第二个参数为填充的内容。 |
String.padEnd |
小于指定长度,在字符串末尾填充字符串。第一个参数为填充的长度,第二个参数为填充的内容。 |
8. 字符串的迭代余结构
let message = "abc";
let strIterator = message[Symbol.iterator]();
console.log(strIterator.next());
console.log(strIterator.next());
console.log(strIterator.next());
console.log(strIterator.next());
for (const i of "abcde") {
console.log(i);
}
let message = "abcde";
console.log([...message]);
9. 字符串大小写转换
api |
说明 |
String.toLowerCase |
创建字符串副本,将字符串转换为小写并返回结果。 |
String.toUpperCase |
创建字符串副本,将字符串转换为大写并返回结果。 |
String.toLocaleLowerCase |
创建字符串副本,将字符串转换为大写并返回结果。(特定区域) |
String.toLocaleUpperCase |
创建字符串副本,将字符串转换为大写并返回结果。(特定区域) |
10. 字符串模式pattern
api |
说明 |
String.match |
匹配字符串,返回匹配结果。接受一个参数可以是正则字符串或RegExp对象。只会找到第一个匹配项,返回数组。 |
String.matchAll |
匹配字符串,返回匹配结果。找到所有返回并一次返回所有结果 |
String.search |
从前向后匹配字符串,返回第一个匹配的索引。没找到返回-1 |
String.replace |
替换字符串,返回替换后的字符串。第一个参数是字符串只替换一次,如果是正则带全局标记则替换所有,第二个参数是待替换的文本,可以是字符串或函数 |
String.replaceAll |
|
String.split |
字符串分割,根据传入的分隔符拆分成数组。第一个参数分隔符可以是字符串也可以是RegExp对象,第二参数是数组大小,确保返回的数组不会超过制定 的大小 |
11. localcompare() 方法
api |
说明 |
String.localeCompare |
字符串比较,返回一个整数,返回1,0,-1表示两个字符串的相对顺序。 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现