字符串的方法一共有13个:
.charAt(index) .charCodeAt(index) .toLowerCase() . toUpperCase()
.indexOf('字符',index) .lastIndexOf('字符',index) substr(index,num)
substring(index,index) slice(startIndex,stopIndex) split('字符')
replace('被替换字符',;替换的字符 repeat(n) trim()
var str1 = 'wohaoxiangyIgerendanshizhegerenbuxiangwo';
console.log(str1);
1. 名.charAt(index) 写
//返回指定索引位置的字符
var a = str1.charAt(4);
console.log(a);//'o'
var b = str1.charAt(10);
console.log(b);//'y'
2. 名.charCodeAt(index) 写
//返回指定索引位置字符的unicode编码(万国编码)https://www.habaijian.com/
var c = str1.charCodeAt(4);
console.log(c);// 111
var d = str1.charCodeAt(11);
console.log(d);//73
var str2 = 'wOxiAngDERenShItAoGe';
console.log(str2);
3. .toLowerCase() 不写
//将字符串中的字母全部转换为小写
var e = str2.toLowerCase();
console.log(e);//'woxiangderenshitaoge'
4. 名. toUpperCase() 不写
//将字符串中的字母转换为大写
var f = str2.toUpperCase();
console.log(f); // 'WOXIANGDERENSHITAOGE'
5. 名.indexOf('字符',index) 写
//查找指定字符在字符串中首次出现的索引位置
//如果存在 返回首次出现的索引位置,如果不存在 返回-1
//第一个参数:指定查找的字符
//第二个参数:开始查找的索引,可以不传入,默认从索引0开始查找
var g = str2.indexOf('n');
console.log(g);//5
var h = str2.indexOf('en');
console.log(h);//10 只看这俩个首次出现的e
var i = str2.indexOf('Ao9');
console.log(i); // -1 不存在返回-1
var j = str2.indexOf('n', 7);
console.log(j);//11
6. 名.lastIndexOf('字符',index) 写
//查找指定字符在字符串最后一次出现的索引位置
//如果存在 返回最后一次出现的所以位置,不存在 返回-1
//第一个参数:指定查找的数字
//第二个参数: 结束查找的索引位置,可以不传入,默认从最后索引结束
var k = str2.lastIndexOf('e');
console.log(k); // 19
var l = str2.lastIndexOf('e', 15);
console.log(l);//10
var m = str2.lastIndexOf('p');
console.log(m);//-1
var n = str2.lastIndexOf('G', 10);
console.log(n); // -1
var str3 = '今天星期三,明天是星期,是不是可V我50';
console.log(str3);
7. substr(index,num) 写 (索引 个数)
//截取,从指定索引开始截取 指定个数的字符
//第一个参数:开始截取的索引(包含)
//第二个参数:截取字符的个数,可以不传入,没有就截取到字符串结束
var o = str3.substr(3, 2);
console.log(o);//'期三'
var p = str3.substr(2, 6);
console.log(p); //'星期三,明天'
var q = str3.substr(5);
console.log(q);//'明天是星期,是不是可V我50'
8. substring(index,index) 写(索引 索引)
//截取指定的俩个索引之间的字符
//俩个参数都是索引,不用考虑先传小的还是大的索引,无所谓
//小的索引是(包含),大的索引是不包含
//如果传入一个参数,则从指定索引截取到结束
var r = str3.substring(3, 7);
console.log(r);//'期三,明天'
var s = str3.substring(10, 2);
console.log(s);//'星期三,明天是星'
var t = str3.substring(5);
console.log(s);//'明天是星期,是不是可V我50'
9. slice(startIndex,stopIndex) 写
//截取指定索引之间的字符
//第一个参数:开始截取的索引(包含)
//第二参数:结束截取的索引(不包含)
//可以不传,默认到字符串结束
//可以负值,和数组的slice方法一样理解第二个参数赋值
var u = str3.slice(8);
console.log(u);//'是星期,是不是可V我50'
var v = str3.slice(5, 12);
console.log(v);//',明天是星期,'
var w = str3.slice(3, -5);
console.log(w);//'期三,明天是星期,是不是' 同时也包含负值的元素在数组里就不是了
var str4 = 'mingyingdechilun';
console.log(str4);
10. split('字符') 写
//通过指定的字符实现字符串分割成数组
//传入的字符就是分隔符,如果字符串不存在这个分割,就是把整个字符串作为数组一项
var x = str4.split('i');
console.log(x);//['m','ngy','ngdech','lun']
var y = str4.split('n');
console.log(y);//['mi','gyi','gdechilu','']
var z = str4.split();
console.log(z);//['mingyingdechilun']
var a1 = str4.split(7);
console.log(a1);//['mingyingdechilun']
var b1 = str4.split('');
console.log(b1);//['m', 'i', 'n', 'g', 'y', 'i', 'n', 'g', 'd', 'e', 'c', 'h', 'i', 'l', 'u', 'n']
var str5 = '你们都好好看啊,为什么你们都那么好看呢,原来是因为你们就是好好看啊';
console.log(str5);
11. replace('被替换字符',;替换的字符) 写
//将字符串中的字符替换成什么字符
//调用一次这个方式只能替换一个
var c1 = str5.replace('你们', '乐乐')
console.log(c1);//乐乐都好好看啊,为什么你们都那么好看呢,原来是因为你们就是好好看啊
var c2 = c1.replace('你们', '乐乐')
console.log(c2);//乐乐都好好看啊,为什么乐乐都那么好看呢,原来是因为你们就是好好看啊
使用这种方法可以实现全部替换:
var str6 = '你们好看,真的好看,我就觉得你们好看,你们是真好看';
console.log(str6);
while (true) {
if (str6.indexOf('你们') == -1) {
break;
}
str6 = str6.replace('你们', '张乐乐');
}
console.log(str6);//张乐乐好看,真的好看,我就觉得张乐乐好看,张乐乐是真好看
var str7 = 'abcdef';
console.log(str7);
12. repeat(n) 写
//指定字符串重复几次,拼接
var d2 = str7.repeat(4)
console.log(d2);//'abcdefabcdefabcdefabcdef'
var str8 = ' abc xyz ';
console.log(str8);
13. trim()
//去除字符串两端的空白(空格) 不写
var e2 = str8.trim()
console.log(e2);//'abc xyz'