JavaScript 字符串

摘要:在本教程中,您将学习 JavaScript string 原语类型以及如何使用它来定义字符串。

JavaScript 字符串简介

JavaScript 字符串是原始值。此外,字符串是不可变的。这意味着如果您修改字符串,您将始终获得一个新字符串。原始字符串不会改变。

要创建文字字符串,您可以使用单引号 (') 或双引号 ("),如下所示

let str = 'Hi';
let greeting = "Hello";Code language: JavaScript (javascript)

ES6 引入了 模板字面量,允许您使用反引号 (`) 字符来定义字符串

let name = `John`;Code language: JavaScript (javascript)

模板字面量允许您在字符串中使用单引号和双引号,而无需转义它们。例如

let mesage = `"I'm good". She said";Code language: JavaScript (javascript)

此外,您可以在模板字面量中放置 变量 和表达式。JavaScript 将在字符串中用它们的值替换变量。这称为字符串插值。例如

let name = 'John';
let message = `Hi, I'm ${name}.`;

console.log(message);Code language: JavaScript (javascript)

输出

Hi, I'm John.Code language: JavaScript (javascript)

在此示例中,JavaScript 将 name 变量替换为它在模板字面量中的值。

转义特殊字符

要转义特殊字符,可以使用反斜杠 \ 字符。例如

  • Windows 换行符:'\r\n'
  • Unix 换行符:'\n'
  • 制表符:'\t'
  • 反斜杠 '\'

以下示例使用反斜杠字符来转义字符串中的单引号字符

let str = 'I\'m a string!';Code language: JavaScript (javascript)

获取字符串的长度

length 属性返回字符串的长度

let str = "Good Morning!";
console.log(str.length);  // 13Code language: JavaScript (javascript)

请注意,JavaScript 具有 String 类型(字母 S 大写),它是原始 string 类型的 原始包装器类型。因此,您可以从原始字符串访问 String 类型的属性和方法。

访问字符

要访问字符串中的字符,请使用类似数组的 [] 表示法,并使用基于零的索引。以下示例使用索引零返回字符串的第一个字符

let str = "Hello";
console.log(str[0]); // "H"Code language: JavaScript (javascript)

要访问字符串的最后一个字符,请使用 length - 1 索引

let str = "Hello";
console.log(str[str.length -1]); // "o"Code language: JavaScript (javascript)

使用 + 运算符连接字符串

连接两个或多个字符串,可以使用 + 运算符

let name = 'John';
let str = 'Hello ' + name;

console.log(str); // "Hello John"Code language: JavaScript (javascript)

如果要逐段组装字符串,可以使用 += 运算符

let className = 'btn';
className += ' btn-primary'
className += ' none';

console.log(className);Code language: JavaScript (javascript)

输出

btn btn-primary noneCode language: JavaScript (javascript)

将值转换为字符串

要将非字符串值转换为字符串,可以使用以下方法之一

  • String(n);
  • ” + n
  • n.toString()

请注意,toString() 方法不适用于 undefinednull

将字符串转换为布尔值时,无法将其转换回。例如

let status = false;
let str = status.toString(); // "false"
let back = Boolean(str); // trueCode language: JavaScript (javascript)

在此示例中

  • 首先,声明 status 变量并将其初始化为 false 的值。
  • 其次,使用 toString() 方法将 status 变量转换为字符串。
  • 第三,使用 Boolean() 函数将字符串转换回布尔值。Boolean() 函数将字符串 "false" 转换为布尔值。结果为 true,因为 "false" 是一个非空字符串。

请注意,只有 Boolean() 返回 false 的字符串才是空字符串 ('');

比较字符串

要比较两个字符串,可以使用 比较运算符,例如 >>=<<=== 运算符。

比较运算符根据字符的数值来比较字符串。它可能返回与字典中使用的顺序不同的字符串顺序。例如

let result = 'a' < 'b';
console.log(result); // trueCode language: JavaScript (javascript)

然而

let result = 'a' < 'B';
console.log(result); // falseCode language: JavaScript (javascript)

总结

  • JavaScript 字符串是原始值且不可变的。
  • 文字字符串由单引号 (')、双引号 (") 或反引号 (`) 分隔。
  • length 属性返回字符串的长度。
  • 使用比较运算符 >, >=, <, <=, == 来比较字符串。
本教程对您有帮助吗?