JavaScript String 参考手册

JavaScript 字符串

JavaScript 字符串存储一系列字符,例如 "Bill Gates"。

字符串可以是双引号或单引号内的任何文本:

let carName1 = "Volvo XC60";
let carName2 = 'Volvo XC60';

亲自试一试

字符串索引(下标)是从零开始的:

第一个字符在位置 0,第二个在 1,依此类推。

如需有关字符串的知识,请访问我们的 JavaScript 字符串教程

字符串属性和方法

通常,像 "Bill Gates" 这样的字符串不能有方法或属性,因为它们不是对象。

但是对于 JavaScript,方法和属性也可用于字符串,因为 JavaScript 在执行方法和属性时将字符串视为对象。

JavaScript 字符串方法和属性

方法 描述
charAt() 返回指定位置处的字符。
charCodeAt() 返回指定位置处字符编码。
codePointAt() 返回字符串中索引(位置)处的 Unicode 值。
concat() 返回两个或多个连接的字符串。
constructor 返回字符串的构造函数。
endsWith() 返回字符串是否以指定值结尾。
fromCharCode() 将 Unicode 值作为字符返回。
includes() 返回字符串是否包含指定值。
indexOf() 返回值在字符串中第一次出现的位置。
lastIndexOf() 返回值在字符串中最后一次出现的位置。
length 返回字符串中的字符数。
localeCompare() 使用基于本地的顺序来比较字符串。
match() 在字符串中搜索值或正则表达式,并返回匹配项。
prototype 允许您向对象添加属性和方法。
repeat() 返回拥有多个字符串副本的新字符串。
replace() 在字符串中搜索值或正则表达式,并返回替换值的字符串。
search() 检索字符串中与正则表达式匹配的子串。
slice() 提取字符串的一部分并返回新字符串。
split() 将字符串拆分为子字符串数组。
startsWith() 检查字符串是否以指定字符开头。
substr() 从字符串中抽取子串,该方法是 substring() 的变种。
substring() 从字符串中抽取子串。
toLocaleLowerCase() 使用主机的语言环境返回转换为小写字母的字符串。
toLocaleUpperCase() 使用主机的语言环境返回转换为大写字母的字符串。
toLowerCase() 返回转换为小写字母的字符串。
toString() 将字符串或字符串对象作为字符串返回。
toUpperCase() 返回转换为大写字母的字符串。
trim() 返回删除了空格的字符串。
trimEnd() 返回从末尾删除空格的字符串。
trimStart() 返回从开头删除空格的字符串。
valueOf() 返回字符串或字符串对象的原始值。

提示:所有字符串方法都返回新值。它们不会改变原始变量。

字符串 HTML Wrapper 方法

HTML 包装器方法返回包装在 HTML 标记内的字符串。

这些不是标准的方法,可能无法按预期工作。

方法 描述
anchor() 将字符串显示为锚点。
big() 使用大字体显示字符串。
blink() 显示闪烁的字符串。
bold() 以粗体显示字符串。
fixed() 使用固定间距字体显示字符串。
fontcolor() 使用指定颜色显示字符串。
fontsize() 使用指定大小显示字符串。
italics() 以斜体显示字符串。
link() 将字符串显示为超链接。
small() 使用小字体显示字符串。
strike() 显示带有删除线的字符串。
sub() 将字符串显示为下标文本。
sup() 将字符串显示为上标文本。

String 对象描述

字符串是 JavaScript 的一种基本的数据类型。String 类提供了操作原始字符串值的方法。

String 对象的 length 属性声明了该字符串中的字符数。

String 类定义了大量操作字符串的方法,例如从字符串中提取字符或子串,或者检索字符或子串。

注意:JavaScript 的字符串是不可变的(immutable),String 类定义的方法都不能改变字符串的内容。像 String.toUpperCase() 这样的方法,返回的是全新的字符串,而不是修改原始字符串。

在较早的 Netscape 代码基的 JavaScript 实现中(例如 Firefox 实现中),字符串的行为就像只读的字符数组。例如,从字符串 s 中提取第三个字符,可以用 s[2] 代替更加标准的 s.charAt(2)。此外,对字符串应用 for/in 循环时,它将枚举字符串中每个字符的数组下标(但要注意,ECMAScript 标准规定,不能枚举 length 属性)。因为字符串的数组行为不标准,所以应该避免使用它。

课外书

如需更多信息,请阅读 JavaScript 高级教程中的相关内容:

ECMAScript 引用类型
引用类型通常叫做类(class)或对象。本节讲解 ECMAScript 的预定义引用类型。