版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
String对象
字符串可以类似于看做是一个数组(不是真的数组——》伪数组)
// 底层会默认转换成 String对象,这里是为了演示
var str = new String('abcdefg');
console.log( str );
如下图所示:
控制台输出的是一个对象,有下标,有length属性,由此可以把字符串看做是一个数组(不是真的数组——》伪数组)
- 字符串的遍历
var str = 'abcdefg';
//打印字符串中下标为0的字符
console.log(str[0]);//a
//字符串的遍历(类似于数组)
for (var i = 0; i < str.length; i++) {
console.log(str[i]); //a //b //c //d //e //f //g
}
- 查找指定字符的位置:indexOf、lastIndexOf
var str = "abdedba";
//indexOf()——》查找字符第一次出现的下标——》如果找不到,返回-1
console.log(str.indexOf('a')); // 0
console.log( str.indexOf('f') ); // -1
//lastIndexOf()——》查找字符最后一次出现的下标——》如果找不到,返回-1
console.log(str.lastIndexOf('a')); // 6
console.log( str.lastIndexOf('f') ); // -1
- 去除字符串首尾的空格:trim
var str = ' hello world ';
//去除字符串首尾的空格,中间的不管
str = str.trim();
console.log(str);// hello world
- 字母大小写转换:toUpperCase、toLowerCase
var myName = 'GouDan';
//每个英文字母转换成大写
console.log(myName.toUpperCase()); // GOUDAN
//每个英文字母转换成小写
console.log(myName.toLowerCase()); // goudan
- 将字符串分割成一个数组:split
//split('分割符'): 将字符串通过分隔符分割成一个数组, 返回分割后得到的数组
var str = 'a|b|c|d';
var arr = str.split('|');
console.log(arr); // ["a", "b", "c", "d"]
var str1 = 'abcd';
var arr1 = str1.split('');
console.log(arr1); // ["a", "b", "c", "d"]
- 字符串拼接:concat
var str1 = 'abc';
var str2 = 'def';
//一般拼接用+
console.log(str1 + str2); //abcdef
//拼接字符串会返回一个新字符串(了解下)
var newStr = str1.concat(str2);
console.log(newStr); // abcdef
- 字符串截取:slice、substring、substr(不传参默认从头截到尾)
var str = 'abcdefg';
//slice(begin,end)——》从begin开始,截取到end(有始无终,不包括最后一个)
console.log(str.slice(1, 3)); // bc
//subString(begin,end)——》从begin开始,截取到end(有始无终,不包括最后一个)
console.log(str.substring(1, 3)); // bc
//subStr(begin,length)——》从begin开始,截取length个,包括begin
console.log(str.substr(1, 3)); // bcd
字符串替换:replace
var str = " 123AD asadf asadfasf adf ";
//替换掉字符串中的所有空白
//var str2 = str.replace(/ /g, "");
var str2 = str.replace(/\s/g, "");
// g 修饰符, 表示全局匹配搜索
console.log(str2); // 123ADasadfasadfasfadf
var str = "123ADasadfasadfasfadf";
//将所有的ad / AD替换成xx
// var str2 = str.replace(/ad|AD/g, "xx");
var str2 = str.replace(/ad/gi, "xx");
// i 修饰符 ignore 忽略大小写
console.log(str2); // 123xxasxxfasxxfasfxxf