关于前端学习:Javascript字符串数据类型String

60次阅读

共计 2901 个字符,预计需要花费 8 分钟才能阅读完成。

  • 理解字符串

    • 由引号 (双引号、单引号、反引号) 包裹的值叫做字符串
    • 字符串在应用时主动转换为简单数据类型,应用完后主动转为根本数据类型
    • 当应用 字符串.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('世界')

正文完
 0