• 理解字符串

    • 由引号(双引号、单引号、反引号)包裹的值叫做字符串
    • 字符串在应用时主动转换为简单数据类型,应用完后主动转为根本数据类型
    • 当应用 字符串.xxx操作语法时,字符串转为简单数据类型,在堆空间开拓一块空间,将每个字符依照索引进行排列,就能够拜访外面的数据,应用完结后,转为根本数据类型,在堆空间内开拓的空间也主动销毁
  • 字符串的创立办法

    • 字面量创立办法:var 字符串名=''
    • 内置构造函数创立办法:var 字符串名=new String('')
  • 创立字符串初始化数据

    • 字面量创立办法:在var str = 'hello world'内间接写数据即可
    • 内置构造函数创立办法:var str = new String('hello world')内写数据即可
  • 其余数据类型转换为字符串数据类型办法

    • 语法:变量.toString()
    • 转换规则:

      • 可将数值、布尔值、字符串转为字符串类型
      • undefined 和 null无奈转为字符串类型
  • 字符串的length属性

    • 字符串的length属性示意一个字符串的长度;应用 字符串.length 可获取一个字符串的长度;字符串无奈设置本人的长度;在字符串中,空格也算一个字符
    • 通过 字符串名[索引] 可获取指定下标的字符,然而不能对某一个字符进行批改,因为字符串时根本数据类型,所以只能从新赋值笼罩之前的数据
  • 字符编码

    • ASCII 码:一共128个,键盘上每个按键对应一个二进制码
    • Unicode 码:国内编码,目前应用的为UTF-8
    • GBK 码:中文编码,蕴含所有汉字
    • 不同的编码,同一个码值所对应的内容也不一样
  • 字符串操作方法

    • 获取字符串中指定索引上的字符
      语法:字符串名.charAt(索引)  返回值:索引地位存在,返回对应字符,索引地位不存在返回空  应用:str.charAt(12)
    • 获取字符串中指定索引上的字符的UTF-8编码值
      语法:字符串名.charCodeAt(索引)  返回值:索引地位字符的编码,索引地位不存在返回NaN  应用:str.charCodeAt(12)
    • 截取字符串
      语法:字符串名.substr(开始截取索引,截取个数)  参数:不写参数默认全副截取,参数二不写截取到字符串开端  返回值:截取到的字符串  应用:str.substr(1,5)
    • 截取字符串
      语法:字符串名.substring(开始截取索引,完结截取索引)  参数:不写参数默认全副截取,参数二不写截取到字符串开端  返回值:截取到的字符串  应用:str.substr(1,5)
    • 将字符串中大写字母转为小写字母
      语法:字符串名.toLowerCase()  返回值:转换后的字符串  应用:str.toLowerCase()
    • 将字符串中小写字母转为大写字母
      语法:字符串名.toUpperCase()  返回值:转换后的字符串  应用:str.toUpperCase()
    • 替换指定字符串
      语法:字符串名.replace('须要进行替换的字符串','替换的字符串内容')  留神点:参数一字符串中没有时,不进行替换,遇到第一个满足条件的内容替换后不再往下替换  返回值:替换后的字符串  应用:str.replace('H','h')
    • 拼接字符串
      语法:字符串名.concat('拼接的字符串'···)  参数:能够间接写字符串,也能够写字符串变量  返回值:替换后的字符串  应用:str.concat(str2,' 世界')
    • 截取字符串
      语法:字符串名.slice(开始索引,完结索引)  参数:索引写负整数示意从 length + 负整数地位  返回值:截取到的字符串  应用:str.slice(5,10)
    • 切割字符串
      语法:字符串名.split('切割的符号',切割个数)  参数:参数1不写时返回整个字符串,写空字符串示意一位一个进行切割;参数2示意切割的个数,默认为全副进行切割  返回值:切割后一个存储字符的一个数组  应用:str.split(' ',11)
    • 从字符串开始地位向后查找字符串片段在字符串中首次呈现的地位
      语法①:字符串.indexOf('字符串片段')  语法②:字符串.indexOf('字符串片段', 开始索引)  返回值:字符串中存在该字符串片段,返回对应索引,字符串中不存在该字符串片段,返回-1  应用:str.indexOf('H')        str.indexOf('H',5)
    • 从字符串完结地位向前查找字符串片段在字符串中首次呈现的地位
      语法①:字符串.lastIndexOf('字符串片段')  语法②:字符串.lastIndexOf('字符串片段', 开始索引)  返回值:字符串中存在该字符串片段,返回对应索引,字符串中不存在该字符串片段,返回-1  应用:str.lastIndexOf('H')        str.lastIndexOf('H',5)
    • 判断字符串中是否蕴含某一个字符串片段
      语法:字符串.includes('字符串片段')  返回值:字符串中存在该字符串片段,返回 true,字符串中不存在该字符串片段,返回false  应用:str.includes('w')
    • 查找字符串中首次呈现的字符串片段地位
      语法:字符串.search('字符串片段')  参数:参数能够写正则表达式  返回值:字符串中存在该字符串片段,返回对应索引,字符串中不存在该字符串片段,返回-1  应用:str.search('w')
    • 查找字符串中所有匹配的字符串片段
      语法:字符串.match('字符串片段')  参数:参数个别写正则表达式  返回值:一个存储查找到匹配的字符串片段的数组  应用:str.match('w')
    • 去除字符串首尾空格
      语法:字符串.trim()  返回值:去除首尾空格后的字符串  应用:str.trim()
    • 去除字符串头部的空格
      语法:字符串.trimStart()  返回值:去除头部空格后的字符串  应用:str.trimStart()
    • 去除字符串尾部的空格
      语法:字符串.trimEnd()  返回值:去除尾部空格后的字符串  应用:str.trimEnd()
    • 从字符串后面补齐字符串
      语法:字符串.padStart(指标长度, '填充字符')  参数:参数1:指标长度小于字符串长度时,办法无意义;指标长度大于或等于时,应用填充字符进行填充;参数2:能够是多个字符,也能够只有一个字符,多个字符超出长度后,前面不能补齐的字符被抛弃  返回值:补齐后的字符串  应用:str.padStart(11,'世界')
    • 从字符串前面补齐字符串
      语法:字符串.padEnd(指标长度, '填充字符')  参数:参数1:指标长度小于字符串长度时,办法无意义;指标长度大于或等于时,应用填充字符进行填充;参数2:能够是多个字符,也能够只有一个字符,多个字符超出长度后,前面不能补齐的字符被抛弃  返回值:补齐后的字符串  应用:str.padEnd(11,'世界')
    • 判断一个字符串是否以 指定字符串片段 开始
      语法:字符串.startsWith('字符串片段')  返回值:如果是以该字符串片段开始返回 true ,如果不是以该字符串片段开始返回 false  应用:str.startsWith('世界')
    • 判断一个字符串是否以 指定字符串片段 开始
      语法:字符串.endsWith('字符串片段')  返回值:如果是以该字符串片段开始返回 true ,如果不是以该字符串片段开始返回 false  应用:str.endsWith('世界')