一、字符串长度
length 属性返回字符串的长度:
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var length = txt.length;
length 属性返回字符串的长度: 26
二、查找字符串中的字符串
1. indexOf() 方法返回字符串中指定文本首次出现的索引(位置):
var str = "The full name of China is the People's Republic of China.";
var pos = str.indexOf("China");
indexOf() 方法返回指定文本首次出现的位置: 17
- JavaScript 从零计算位置。
- 0 是字符串中的第一个位置,1 是第二个,2 是第三个 ...
当然,也可以直接找出字符串中指定字符首次出现的位置:
var str = "China";
var pos = str.indexOf("h");
这时候返回 3
2. lastIndexOf() 方法返回指定文本在字符串中最后一次出现的索引:
var str = "The full name of China is the People's Republic of China.";
var pos = str.lastIndexOf("China");
lastIndexOf() 返回指定文本最后出现的位置: 51
- 如果未找到文本, indexOf() 和 lastIndexOf() 均返回 -1。
3. 两种方法都接受作为检索起始位置的第二个参数。
var str = "The full name of China is the People's Republic of China.";
var pos = str.indexOf("China",18);
18表示从第18个位置之后开始检索,检索得到的结果是51,也就是第二个“China”所出现的位置,即‘C’的索引。
lastIndexOf() 方法向后进行检索(从尾到头),这意味着:假如第二个参数是 50,则从位置 50 开始检索,直到字符串的起点。
var str = "The full name of China is the People's Republic of China.";
var pos = str.lastIndexOf("China", 50);
检索得到的结果是17,也就是第一个“China”所出现的位置。
lastIndexOf()方法向后搜索,因此位置 50 表示在第 50 位开始搜索,并搜索到开头。
位置 50 指的是从开头算起的位置 50。
三、search() 方法
search() 方法搜索特定值的字符串,并返回匹配的位置:
var str = "The full name of China is the People's Republic of China.";
var pos = str.search("China");
返回值也是17
两种方法,indexOf() 与 search(),是相等的。
这两种方法的区别在于:
- search() 方法无法设置第二个开始位置参数。
- indexOf() 方法无法设置更强大的搜索值(正则表达式)。
四、includes()方法
let str = "hello";
console.log(str.includes('l')); //true
如果字符串中包含该字符,就返回true,否则返回false。
五、大小写转换
通过 toUpperCase() 把字符串转换为大写:
var text1 = "Hello World!"; // 字符串
var text2 = text1.toUpperCase(); // text2 是被转换为大写的 text1
// 返回 HELLO WORLD!
通过 toLowerCase() 把字符串转换为小写:
var text1 = "Hello World!"; // 字符串
var text2 = text1.toLowerCase(); // text2 是被转换为小写的 text1
// 返回 hello world!
六、charAt() 方法
charAt() 方法返回字符串中指定下标(位置)的字符串:
var str = "HELLO WORLD";
str.charAt(0); // 返回 H
七、charCodeAt() 方法
charCodeAt() 方法返回字符串中指定索引的字符 unicode 编码:
var str = "HELLO WORLD";
str.charCodeAt(0); // 返回 72