上一节我们学习了Number对象,本节我们继续学习JS中另一个重要的内置对象——String对象。

String对象,顾名思义就是处理文本字符串的对象。

1. 创建String对象的语法:

let str = new String(value) // 创建字符串对象

2. 如何创建?

/* 完整的三种创建方式: */
let str1 = "Dotcpp编程";              // 字面量方式 - 原始值类型
let str2 = String("Dotcpp编程");      // 函数调用方式 - 原始值类型
let str3 = new String("Dotcpp编程"); // 构造函数方式 - String对象类型

3. String对象有哪些静态属性:

函数/内置变量说明
String.prototypeString 对象的原型,用于向所有 String 实例添加属性和方法
String.lengthString构造函数的length属性,值为1

比如电话号码都是11位,我们可以通过.length这个属性来判断一个数字字符串是不是11位进而判断是不是合法电话号码:

let tel = '12345678910'
if(tel.length===11)console.log('该数字串满足11位的要求');

4. String对象有哪些静态方法:

函数/内置变量说明
String.fromCharCode()通过Unicode编码创建字符串
String.fromCodePoint()通过码点创建字符串(支持Unicode扩展)
String.raw()返回模板字符串的原始字符串

工作时,我们通常使用String.fromCharCode()来将字符编码转换为字符串。

console.log(String.fromCharCode(65, 66, 67)); // "ABC" - 将编码转为字符
console.log(String.fromCodePoint(0x1F600)); // "😀" - 支持表情符号
console.log(String.raw`Hello\nDotcpp`); // "Hello\nDotcpp" - 显示字面字符

5. String对象有哪些实例属性:

函数/内置变量说明
length返回字符串的长度

6. String对象有哪些实例方法:

函数/内置变量说明
charAt()返回指定位置的字符
charCodeAt()返回指定位置字符的Unicode编码
codePointAt()返回指定位置字符的码点
indexOf()返回指定子字符串首次出现的位置
lastIndexOf()返回指定子字符串最后一次出现的位置
includes()判断是否包含指定子字符串
startsWith()判断是否以指定子字符串开头
endsWith()判断是否以指定子字符串结尾
concat()连接多个字符串
slice()提取字符串的片段
substring()提取字符串中两个指定索引之间的字符
substr()从指定位置提取指定长度的字符串
split()将字符串分割为字符串数组
repeat()将字符串重复指定次数
toLowerCase()将字符串转换为小写
toUpperCase()将字符串转换为大写
trim()去除字符串两端的空白字符
trimStart()去除字符串开始的空白字符
trimEnd()去除字符串结尾的空白字符
padStart()在字符串开头填充指定字符到指定长度
padEnd()在字符串结尾填充指定字符到指定长度
match()使用正则表达式匹配字符串
matchAll()返回所有正则表达式匹配的迭代器
search()搜索正则表达式匹配的位置
replace()替换正则表达式匹配的子字符串
replaceAll()替换所有匹配的子字符串

这里有很多常用函数,比如工作时,我们通常会使用这些方法来进行字符串处理和验证。

const str = 'Hello Dotcpp编程!'
// 查询方法
console.log(str.charAt(0)); // "H"
console.log(str.indexOf("Dotcpp")); // 6
console.log(str.includes("Dotcpp")); // true
// 操作方法
console.log(str.slice(6, 12)); // "Dotcpp"
console.log(str.split(" ")); // ["Hello", "Dotcpp编程!"]
// 格式化方法
console.log(str.toUpperCase()); // "HELLO DOTCPP编程!"
console.log(" hello ".trim()); // "hello"
console.log("5".padStart(3, "0")); // "005"
// 正则方法
console.log(str.replace("Dotcpp", "World")); // "Hello World编程!"
/* 模板字符串 */
const introduction = `${str}其网址为:dotcpp.com`
console.log(introduction);//Hello Dotcpp编程!其网址为:dotcpp.com

总结:本节我们主要介绍了JS中的String对象,包括它的创建方式、静态方法、实例方法以及模板字符串等特性。字符串处理是前端开发中最常用的操作之一,掌握String对象的方法对于提高开发效率至关重要。

点赞(92)

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Dotcpp在线编译      (登录可减少运行等待时间)