- String的大部分方法都不会对原字符串产生影响,而是返回一个新的值
- 在底层字符串是以字符数组的形式保存的
var str = "hello";
//["h","e","l","l","o"]
console.log(str[4]);
//o
length属性
可以用来获取字符串的长度
语法:变量.length
var str = "hello";
console.log(str.length);
charAt()
- 可以返回字符串中指定位置(index)的字节
- 根据索引获取指定为值的字符
语法:变量.charAt(index);
var str = "hello";
console.log(str.charAt(1));
//e
charCodeAt()
可以获取指定字符的字符编码(Unicode)
语法:变量.charCodeAt(index);
var str = "hello";
console.log(str.charCodeAt(1));
//101
String.formCharCode()
可以根据字符串编码获取字符
语法:String.formCharCode()
console.log(String.formCharCode(72));
//h
concat()
- 可以连接两个或多个字符串
- 作用和+一样
语法:变量.concat(变量2,变量3....变量n);
var str1 = "你好";
var str2 = "帅哥";
console.log(str1.concat(str2));
//你好帅哥
indexOf()
- 可以检索一个字符串中是否含有指定内容
- 如果字符串中含有该内容,则会返回其第一次出现的索引
- 如果没有找到指定内容,则返回-1
- 可以指定第二个参数,指定开始查找的位置
语法:变量. indexOf(参数1,参数2);
var str = "hello";
console.log(str.indexOf("h",1));
//从索引为1的位置开始查找h字符出现的位置
//-1
lastIndexOf()
- 该方法和indeOf()方法的用法一样
- 不同的是indexOf是从前往后找,而lastIndexOf是从后往前找
- 也可以指定第二个参数,指定开始查找的位置
语法:变量. lastIndexOf(参数1,参数2);
var str = "hello";
console.log(str.lastIndexOf("h",1));
//从索引为1的位置开始查找h字符出现的位置
//0
slice()
- 可以从字符串中截取指定内容
- 不会影响原字符串,而是将截取到的内容返回
- 参数:
- 第一个,开始位置的索引(包括开始位置)
- 第二个,结束位置的索引(不包括结束位置)
- 如果省略第二个参数,则会截取到后面所有的字符
- 也可以传递一个负数作为参数,负数表示从后边计算位置
语法:变量.slice(参数1,参数2);
var str = "shfiaeohgfioahgq";
console.log(str.slice(1,4));
//hfi
substring()
- 可以用来截取一个字符串,和slice类似
- 参数:
- 第一个,开始位置的索引(包括开始位置)
- 第二个,结束位置的索引(不包括结束位置)
- 不同的是这个方法不能接受负值作为参数,如果传递了一个负值,则默认为0
- 它会自动调整参数的位置,如果第二个参数小于第一个参数,则自动交换
语法:变量.substring(参数1,参数2);
var str = "shfiaeohgfioahgq";
console.log(str.substring(1,4));
//hfi
substr()
- 该方法用于截取字符串
- 参数:
- 第一个,开始位置的索引(包括开始位置)
- 第二个,截取的长度
- 在ES中没有对该方法进行标准化,因此反对使用它,但所有的浏览器中都可以使用它
语法:变量.substr(参数1,参数2);
var str = "shfiaeohgfioahgq";
console.log(str.substr(1,4));
//hfia
split()
- 可以将一个字符串拆分为一个数组
- 它需要一个字符串作为参数,将会根据字符串去拆分数组
- 如果传递一个空值作为参数,则会将每一个字符都拆分为数组中的元素
语法:变量.split("字符串");
var str = "abc,def,ghi";
var result = str.split(,);
console.log(result);
//object
console.log(result.length);
//3
toUpperCase()
可以将字符串转换为大写并返回
语法:变量. toUpperCase();
var str = "abcdefg";
console.log(str.toUpperCase());
//ABCDEFG
toLowerCase()
可以将字符串转换为小写并返回
语法:变量. toLowerCase();
var str = "ABCDEFG";
console.log(str.toLowerCase());
//abcdefg