string
在JavaScript中,表示字符串有多种方式,每种方式都有其特定的用途和场景。以下是一些常见的字符串表示方法:
-
双引号 (
"
):1let str = "Hello, World!";
-
单引号 (
'
):1let str = 'Hello, World!';
-
模板字符串 (Template literals,反引号
`
):- 允许字符串跨越多行。
- 支持内嵌表达式(通过
${expression}
嵌入变量或表达式)。
1let name = "Kimi"; 2let greeting = `Hello, ${name}!`;
-
ES6 引入的模板字符串:
- 通过反引号(
`
)定义,支持内嵌表达式。 - 可以包含变量、表达式、甚至是函数调用。
1const price = 19.99; 2const tax = price * 0.07; 3const total = price + tax; 4console.log(`Total: $${total.toFixed(2)}`);
- 通过反引号(
-
使用
String
构造函数:- 通过
new String()
可以创建一个新的字符串对象。
1let str = new String("Hello, World!");
- 通过
-
使用
String.fromCharCode()
方法:- 通过字符的Unicode码点创建字符串。
1let str = String.fromCharCode(72, 101, 108, 108, 111);
-
使用
escape()
和unescape()
函数:- 这些函数用于对字符串进行编码和解码,但它们已经不推荐使用,因为现代浏览器支持更广泛的字符集。
1let str = escape("Hello, World!"); 2let decodedStr = unescape(str);
-
使用
String.raw()
方法:- 用于获取模板字符串的原始字符串形式,不处理反斜杠(
\
)作为转义字符。
1let templateLiteral = `This is a template literal with a newline 2and a backslash: \\`; 3let rawStr = String.raw(templateLiteral);
- 用于获取模板字符串的原始字符串形式,不处理反斜杠(
-
使用
Array.join()
方法:- 可以将数组中的元素连接成一个字符串。
1let parts = ["Hello", "World"]; 2let str = parts.join(", ");
每种方法都有其适用的场景,模板字符串尤其适用于需要动态生成字符串内容的情况。