JavaScript 字符串
字符串(string)是存储文本的数据类型,例如姓名、网址、文章内容。日常开发几乎处处与字符串打交道,掌握它的写法与常用方法是 JavaScript 入门的必修课。
创建字符串
用单引号、双引号或反引号包裹即可创建字符串,三种写法等价:
let name1 = "张三";
let name2 = '李四';
let name3 = `王五`;
console.log(name1, name2, name3); // 输出:张三 李四 王五
转义字符与长度
字符串内想显示引号、换行等特殊字符,需要用反斜杠 \ 转义:
let msg = "第一行\n第二行";
console.log(msg);
// 输出:第一行
// 第二行
console.log("hello".length); // 输出:5
常用方法(一):大小写与查找
方法名都是驼峰写法,调用后返回新值,不影响原字符串:
let text = "Hello World";
console.log(text.toUpperCase()); // 输出:HELLO WORLD
console.log(text.toLowerCase()); // 输出:hello world
console.log(text.indexOf("World")); // 输出:6(找不到返回 -1)
console.log(text.includes("Hello")); // 输出:true
常用方法(二):截取替换拆分
处理用户输入、解析文本时经常用到这几招:
let line = " apple,banana,orange ";
console.log(line.trim()); // 输出:apple,banana,orange
console.log(line.trim().slice(0, 5)); // 输出:apple
console.log(line.trim().replace("apple", "pear")); // 输出:pear,banana,orange
console.log(line.trim().split(",")); // 输出:[ 'apple', 'banana', 'orange' ]
trim() 去掉首尾空格,slice(start, end) 截取片段,replace 替换第一处,split 按分隔符拆成数组。
字符串不可变
字符串一旦创建就不能修改,看似"修改"的方法其实都返回新字符串:
let s = "abc";
s.toUpperCase(); // 返回值是 "ABC",但 s 本身没变
console.log(s); // 输出:abc
s = s.toUpperCase(); // 重新赋值后才生效
console.log(s); // 输出:ABC
小结
字符串可用三种引号创建,通过 length 取长度、方法处理文本;牢记"方法返回新字符串、原串不变",需要结果时记得重新赋值。