1、字符串的相关的方法:字符串在底层是以数组的形式保存的,在操作字符串时把他想象成一个数组;如字符串"hello",在底层保存时是["h","e","l","l","o"], 所以我们可以获得字符串中的每一个字符(字符串名[索引]),
length:
- 获取字符串的长度
-用法:字符串名.length
charAt():
- 根据索引获取指定位置的字符,不会对原字符串产生影响
-用法:字符串名.charAt(索引) ,但不如 字符串名[索引]简单
charCodeAt():
- 根据索引获取指定的字符编码,返回的是Unicode编码,charAt()返回的是字符
-用法:字符串名.charCodeAt(索引)
String.fromCharCode():
- 根据字符编码获取字符
concat():
-语法:字符串1.concatenate(字符串2,字符串3)
-用来连接两个或多个字符串,作用和+一样,不会对原字符串产生影响,返回一个新的字符串
indexOf():
-语法:
字符串名.indexof(要检索的字符串,查找的位置)
-用来检索一个字符串中是否含有指定内容,如果字符串中含有该内容,则会返回其第一次出现的索引;如果没有找到指定 内容,则返回-1。
-可以指定第二个参数,指定开始查找的位置,为0的话从第一个字符开始查找
lastIndexOf()
- 从一个字符串中检索指定内容
- 需要一个字符串作为参数,这个字符串就是要检索的内容,如果找到该内容,则会返回其第一次出现的索引,如果没有找到则返回-1。
- 可以指定一个第二个参数,来表示开始查找的位置
- indexOf()是从前向后找
- lastIndexOf()是从后向前找(其余用法与indexOf()一样 )
slice()
- 可以从一个字符串中截取指定的内容,并将截取到内容返回,不会影响原变量
- 参数:
第一个:截取开始的位置(包括开始)
第二个:截取结束的位置(不包括结束)
- 可以省略第二个参数,如果省略则一直截取到最后
- 可以传负数,如果是负数则从后往前数,-1为最后一个,-2是倒数第二个
substr()
- 和slice()基本一致,不同的是它第二个参数不是索引,而是截取的数量
-ECMAscript没有对该方法金星标准化,因此反对使用它
substring()
- 可以用来截取字符串,和slice()基本一致,不同的是它不能接受负值作为参数,如果设置一个负值,则会自动修正为0, substring()中如果第二个参数小于第一个,自动调整位置,自动交换
toLowerCase() :
- 将字符串转换为小写并返回
toUpperCase() :
- 将字符串转换为大写并返回
split():
- 可以根据指定内容将一个字符串拆分为一个数组 (对于数组的方法join()可以将一个数组转换为一个字符串,split()刚好与他相反)
-如果传一个空串,则字符串中每一个字符都被拆分为数组中的一个元素
- 参数:-需要一个字符串作为参数,将会根据字符串去拆分数组
-可以传递一个正则表达式作为参数,然后根据正则表达式去拆分字符串,此种方法即使不设置全局匹配也会全部给拆了
match() :
- 可以将字符串中和正则表达式匹配的内容提取出来
-默认情况下,match只会找到第一个符合要求的内容,找到以后停止检索,我们可以设置正则表达式为全局匹配模式,这样就会匹配到所有的内容
- 参数:
- 正则表达式,可以根据该正则表达式将字符串中符合要求的内容提取出来,并且封装到一个数组中返回,即使只查询到一个结果
replace() :
- 可以将字符串中指定内容替换为新的内容
- 默认只替换第一个,如果想要都替换掉,需要使用正则表达式并使用全局匹配模式
- 参数:
- 第一个参数:被替换的内容,可以是一个正则表达式
- 第二个参数:替换的新内容,(可以传入一个空串,此时就是把要替换的内容给删掉)
search() :
- 可以根据正则表达式去字符串中查找指定的内容(可以搜索字符串中是否含有指定内容,与indexOf一样,如果搜索到,则返回指定内容第一次出现的索引,如果没找到则返回-1)
-可以传入一个正则表达式作为参数
-search()只会查找第一个,即使设置了全局匹配也没用
- 参数: 正则表达式,将会根据该表达式查询内容,并且将第一个匹配到的内容的索引返回,如果没有匹配到任何内容,则返回-1。