基础知识,学了之后也没用过,都忘了怎么用了,字符串方法和数组方法有点搞混,记录一下
1. charAt() - 返回指定索引位置的字符
第一个字符位置为0,第二个为1,以此类推...
只返回一个字符
实例
let str = "hello word";
let n = str.charAt(4);
document.write(n); // o
2. charCodeAt() - 返回指定位置字符的Unicode编码
实例
let str = "Hello word";
let n = str.charCodeAt(0); //H
document.write(n); // 72
3. indexOf() - 返回字符串中指定字符第一次出现的位置(索引)
返回指定字符首次出现的位置,如果没有找到,返回 -1
区分大小写
接受作为检索起始位置的第二个参数
实例
let str = "Hello beauty, do you like me ?";
let n = str.indexOf("beauty");
document.write(n); // 6
let str = "The full name of China is the People's *.";
let pos = str.indexOf("China", 18);
document.write(str.length); //57
document.write('<br />');
document.write(pos); //51
4. lastIndexOf() - 返回指定字符最后出现的位置
该方法默认从0开始计算指定字符串出现的最后位置,如果指定第二参数start,则在一个字符串中指定位置从后向前搜索
如果没有找到匹配字符串则返回 -1 。区分大小写
实例
let str = "I am from runoob,welcome to runoob site";
let n = str.lastIndexOf("runoob");
document.write(n); // 28
let str = "I am from runoob,welcome to runoob site";
let n = str.lastIndexOf("runoob",20);
document.write(n); //10
5. search() - 搜索特定值的字符串,并返回匹配的位置
与indexOf()方法类似,区别在于
- search()方法无法设置第二个开始位置参数
- indexOf()方法无法设置更强大的搜索值(正则表达式)
实例
let str = "Hello beauty, do you like me ?";
let n = str.search("beauty");
document.write(n); // 6
6. concat() - 连接两个或更多字符串,并返回新字符串
没有改变原字符串,但是会返回一个新字符串
实例
let str1 = 'hello ';
let str2 = 'beauty!';
let n = str1.concat(str2);
document.write(n); //hello beauty!
//concat() 方法可用于代替加运算符。下面两行是等效的:
var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ","World!");
7. includes() - 查找字符串中是否包含指定的字符串
返回布尔值,true/false
实例
let str = "Hello beauty, do you like me ?";
let n = str.includes("beauty");
document.write(n); // true
8. replace() - 在字符串中方查找匹配的子串,并替换与正则表达式匹配的子串
该方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
不会改变原始字符串,会返回新的字符串
请注意正则表达式不带引号。
实例
let str="Visit Microsoft! Visit Microsoft!";
let n=str.replace("Microsoft","Runoob");
document.write(n); // Visit Runoob!Visit Microsoft!
let str="Visit Microsoft! Visit Microsoft!";
let n=str.replace(/Microsoft/g,"Runoob");
document.write(n); // Visit Runoob!Visit Microsoft!
9. slice() - 截取字符串(一)
提取字符串的片段,并在新的字符串中返回被提取的部分
slice(start,end) 从第start个开始,截取到第end个结束
slice(-9,-5) 从倒数第9个开始,截取到倒数第5个
slice(3) 若省略第二参数,从第三个字符开始,截取到最后一个字符
slice(-16) 负数是从后面数
实例
let str = "Hello beauty, do you like me ?";
let n = str.slice(6,12);
document.write(n); // beauty
let str = "Hello beauty, do you like me ?";
let n = str.slice(-9, -5);
document.write(n); //like
let str = "Hello beauty, do you like me ?";
let n = str.slice(5);
document.write(n); // beauty, do you like me ?
let str = "Hello beauty, do you like me ?";
let n = str.slice(-16);
document.write(n); // do you like me ?
10. substring() - 截取字符串(二)
类似于 slice() ,区别在于,substring()无法接受负的索引
如果省略第二个参数,则该 substring() 将裁剪字符串的剩余部分。
实例
let str = "Hello beauty, do you like me ?";
let n = str.substring(6,12);
document.write(n); // beauty
11. substr() - 截取字符串(三)
类似 slice(),区别在于第二个参数规定被提取部分的长度
如果省略第二个参数,则该 substr() 将裁剪字符串的剩余部分。
如果首个参数为负,则从字符串的结尾计算位置。
第二个参数不能为负,因为它定义的是长度。
实例
let str = "Hello beauty, do you like me ?";
let n = str.substr(6,6);
document.write(n); // beauty
12. toUpperCase() 把字符串转换为大写
实例
let str = 'hello beauty';
let n = str.toUpperCase();
document.write(n); //HELLO BEAUTY
13. toLowerCase() 把字符串转换为小写
实例
let str = 'HELLO BEAUTY';
let n = str.toLowerCase();
document.write(n); //hello beauty
14. trim() - 山粗字符串两端的空白符
实例
let str = ' HELLO BEAUTY ';
let n = str.trim();
document.write(n); //HELLO BEAUTY
15. split() - 将字符串转换为数组
实例
let str = 'hello beauty';
let n = str.split('');
document.write(n); //h,e,l,l,o, ,b,e,a,u,t,y