JavaScript对象编程(六)
String对象
什么是String对象
String 对象用于存储和处理文本(字符串)
创建String对象
访问String对象的length属性
类型检查
只有对象才有属性和方法,那么我们可以访问字符串类型的属性和方法吗?
由JS内部自动完成
String对象访问
在早期的JavaScript设计中,字符串被设计为一种只读的字符数组,因此,字符串可以用数组的访问方式访问其中的字符
下标访问
标准访问方式charAt()
字符串的不可变性
在 JavaScript 中,字符串的值是不可变的,这意味着一旦字符串被创建就不能被改变。
无法改变,但可以重新赋值
String对象的修改
原始数据类型的字符串无法修改,但可以使用String对象的replace()方法进行修改
replace()
replace无法修改原字符串,只是返回一个新字符串
替换的值可以为空
可以对多个字符进行操作
String对象的分割
split() 传入一个分隔符作为参数,以该分隔符为标准,将字符串进行分割并存入一个新数组并返回
注意分隔符位置
第二个参数可选,代表分割后数组的最大长度
分隔符可以为空
分隔符可以为空格
String对象常用方法
indexOf() 返回要查找的字符第一次出现的位置下标,若未找到返回-1
toLowerCase()把字符串转为小写,不会修改原字符串
toUpperCase()把字符串转为大写,不会修改原字符串
String对象的截取
trim() 移除空白符(空格、制表符、换行符等),只对头尾操作,不会修改原字符串
slice() 截取字符串,与数组的slice方法相同
substring() 该方法与slice类似,但参数不能使用负数,若参数为负数会被当做0看待
substring()的参数位置没有严格要求
substr() 第二个参数为要截取的数量
String对象的合并
concat()将一个或多个字符串与原字符串连接合并,形成一个新的字符串并返回。 concat 方法并不影响原字符串。
练习
实现任意英文字符串转为首字母大写。例:输入hEllo,输出Hello
将下划线命名法的字符串转为小驼峰命名法
例:输入this_is_an_example,输出thisIsAnExample
拓展知识
利用localeCompare()和sort进行排序
比较中文字符,第二个参数为可选,代表语言码,会按照该语言规则来进行比较
其中‘ZH’表示中文,具体列表见ISO 639-1 语言代码