详细

【JS系列7】 javascript 字符串函数

1. 查找方法

1-1 字符方法

* charAt()
功能返回字符串中第n个字符
参数超出范围返回空字符串
返回值String中第n个字符的实际值
* 插入charCodeAt()
功能返回字符串中第n个字符的代码
参数超出范围 返回NaN
返回值内容——string中第n个字符的Unicode编码
范围——0~65535之间的16位正数
* fromCharCode()
功能根据字符编码创建字符串
参数:0个或多个整数代表字符的Unicode编码
返回值由指定编码字符组成的新字符串
特性静态方法实为构造函数String()的属性
*以上三者的关系是
charAt与charCodeAt共性
功能根据下标查找指定字符
参数n——要查询的字符下标 有效范围——0~length-1之间
charCodeAt与fromCharCode互为反向操作

1-2 位置方法

* indexOf() 从前向后检索字符串看其是否含有指定子串
* lastIndexOf()从后向前检索字符串看其是否含有指定子串
* 共性
功能根据字符串查找下标位置
参数必选——将要查询的字符子串
可选——开始查找的位置下标值为负数视作0 省略从默认起始位开始查找 超出0~lenght-1返回-1
返回值找到——子串首次出现的下标 未找到——返回-1

1-3 匹配方法

* match()
功能找到一个或多个正则表达式的匹配
参数要进行模式匹配的正则表达式
非正则表达式——将其传递给RegExp()构造函数并转为正则表达式对象
返回值存放匹配结果的数组
有全局标记g 执行全局检索
无全局标记g 执行一次匹配
找到 返回数组
未找到 返回Null
* search()
功能检索字符串中与正则表达式匹配的子串
参数与match()相同
返回值找到 字符串中第一个与正则表达式匹配的子串的起始位置
未找到 返回-1
特性忽略全局标记g和lastIndex()属性
* replace()
功能替换一个与正则表达式匹配的子串
参数参数1——需要进行替换正则表达式对象或字符串
参数2——替换文本或替换函数
特性如果参数1仅为字符串则只进行一次匹配替换若替代所有子串则必须制定全局标记g
如果参数2仅为字符串则可以用特殊字符序列
$$ $,$& 匹配整个模式的子字符串$' 匹配的子字符串之前的子字符串,$\`匹配子字符串之后的子字符串,$n 匹配第n个捕获组的子字符串n=0~9,$nn 匹配第nn个捕获组的子字符串n=0~99
* split()
功能根据指定分隔符将字符串分割成多个子串并返回成数组
参数必选——指定的分割符可选——指定数组的长度

2. 操作方法

2-1 拼接方法

* concat()
语法string.concat(value,...)
功能连接字符串
参数要连接到string上的一个或多个值
返回值把所有参数都连接到字符串string上得到的新字符串
特性功能与"+"相同原始字符串的实际值并未被真正修改

2-2 截取方法

* a.根据下标截取子串
slice()负值参数与字符长度相加
substring()负值参数转换为0
两者共性参数2的子字符串最后一个字符后面的下标
* b.根据长度截取子串
substr():
参数2——返回的字符个数
负值参数
参数1 与字符串长度相加
参数2 转换为0
*以上a和b的共性功能——截取被操作字符串中的子串参数1——指定子串开始的位置省略参数2——以字符串长度为结束位置*
* 空格处理
trim 清楚前置及后缀空格
trimLeft 清除前置空格
trimRight 清除后缀空格
* 比较方法
localeCompare()
功能用本地特定顺序比较两个字符串
参数与原字符串进行比较的字符串
返回值说明比较结果的数字
负数 原字符串<参数字符串
0 原字符串=参数字符串
正数 原字符串>参数字符串

3. 编码方法

  • 字符串常规编码与解码 escape() unescape()
  • URI字符串编码与解码 encodeURI() decodeURI()
  • URI组件编码与解码 encodeURIComponent() decodeURIComponent()

4. 转换方法

  • 大小写转换

    • ①转为大写 toUpperCase() toLocaleUpperCase()
    • ②转为小写 toLowerCase() toLocaleLowerCase()
  • 代码转换

    • 用js动态格式化html,不具语义性,舍弃