【JS字符串方法】JS字符串方法

【JS字符串方法】JS字符串方法字符串的 ES5 和 ES6 方法 ES5String fromCharCode 该方法的参数是一系列 Unicode 码点 返回对应的字符串 charAt 该方法返回指定位置的字符 参数是从 0 开始编号的位置 charCodeAt 方法返回给定位置字符的 Unicode 码点 十进制表示 相当于 String fromCharCode 的逆操作 concat 方法用于连

我的个人博客 https://www.xuehuayu.cn

字符串的ES5和ES6方法

  • ES5
    • String.fromCharCode()
      • 该方法的参数是一系列Unicode码点,返回对应的字符串
    • charAt()
      • 该方法返回指定位置的字符,参数是从0开始编号的位置
    • charCodeAt()
      • 方法返回给定位置字符的Unicode码点(十进制表示),相当于String.fromCharCode()的逆操作
    • concat()
      • 方法用于连接两个字符串,返回一个新字符串,不改变原字符串
    • slice()
      • 方法用于从原字符串取出子字符串并返回,不改变原字符串。它的第一个参数是子字符串的开始位置,第二个参数是子字符串的结束位置(不含该位置)
    • substring()
      • 方法用于从原字符串取出子字符串并返回,不改变原字符串。它与slice作用相同,但有一些奇怪的规则,因此不建议使用这个方法,优先使用slice。此方法的第一个参数表示子字符串的开始位置,第二个位置表示结束位置。
    • substr()
      • 方法用于从原字符串取出子字符串并返回,不改变原字符串。此方法的第一个参数是子字符串的开始位置,第二个参数是子字符串的长度。
    • indexOf(),lastIndexOf()
      • 这两个方法用于确定一个字符串在另一个字符串中的位置,都返回一个整数,表示匹配开始的位置。如果返回-1,就表示不匹配。两者的区别在于,indexOf从字符串头部开始匹配,lastIndexOf从尾部开始匹配。
    • trim()
      • 方法用于去除字符串两端的空格,返回一个新字符串,不改变原字符串
    • toLowerCase(),toUpperCase(),它们都返回一个新字符串,不改变原字符串
      • toLowerCase方法用于将一个字符串全部转为小写,
      • toUpperCase则是全部转为大写。
    • localeCompare()
      • 方法用于比较两个字符串。它返回一个整数,如果小于0,表示第一个字符串小于第二个字符串;如果等于0,表示两者相等;如果大于0,表示第一个字符串大于第二个字符串。
    • match()
      • 方法用于确定原字符串是否匹配某个子字符串,返回一个数组成员为匹配的第一个字符串。如果没有找到匹配,则返回null
    • search()
      • 方法的用法等同于match,但是返回值为匹配的第一个位置。如果没有找到匹配,则返回-1
    • replace()
      • 方法用于替换匹配的子字符串,一般情况下只替换第一个匹配(除非使用带有g修饰符的正则表达式)
    • split()
      • 方法按照给定规则分割字符串,返回一个由分割出来的子字符串组成的数组
  • ES6
    • codePointAt()
      • JavaScript 内部,字符以 UTF-16 的格式储存,每个字符固定为2个字节。对于那些需要4个字节储存的字符(Unicode 码点大于0xFFFF的字符),JavaScript 会认为它们是两个字符。
    • String.fromCodePoint()
      • ES5 提供String.fromCharCode方法,用于从码点返回对应字符,但是这个方法不能识别 32 位的 UTF-16 字符(Unicode 编号大于0xFFFF)。
    • 字符串的遍历器接口
      • ES6 为字符串添加了遍历器接口(Iterator),使得字符串可以被for…of循环遍历。
    • at()
      • ES5 对字符串对象提供charAt方法,返回字符串给定位置的字符。该方法不能识别码点大于0xFFFF的字符。
    • normalize()
      • 许多欧洲语言有语调符号和重音符号。为了表示它们,Unicode 提供了两种方法。 一种是直接提供带重音符号的字符,比如Ǒ(\u01D1)。
        另一种是提供合成符号(combining character),即原字符与重音符号的合成,两个字符合成一个字符,比如O(\u004F)和ˇ(\u030C)合成Ǒ(\u004F\u030C)。
    • includes(), startsWith(), endsWith()
      • 传统上,JavaScript 只有indexOf方法,可以用来确定一个字符串是否包含在另一个字符串中。ES6 又提供了三种新方法。
        • includes():返回布尔值,表示是否找到了参数字符串。
        • startsWith():返回布尔值,表示参数字符串是否在原字符串的头部。
        • endsWith():返回布尔值,表示参数字符串是否在原字符串的尾部。
    • repeat()
      • 方法返回一个新字符串,表示将原字符串重复n次。
    • padStart(),padEnd()
      • ES2017 引入了字符串补全长度的功能。如果某个字符串不够指定长度,会在头部或尾部补全。padStart()用于头部补全,padEnd()用于尾部补全。
    • 模板字符串
    • 模板编译
    • 标签模板
      • 模板字符串的功能,不仅仅是上面这些。它可以紧跟在一个函数名后面,该函数将被调用来处理这个模板字符串。这被称为“标签模板”功能(tagged template)。
    • String.raw()方法
      • 往往用来充当模板字符串的处理函数,返回一个斜杠都被转义(即斜杠前面再加一个斜杠)的字符串,对应于替换变量后的模板字符串。
    • 模板字符串的限制
      • 前面提到标签模板里面,可以内嵌其他语言。但是,模板字符串默认会将字符串转义,导致无法嵌入其他语言。

    字符的 Unicode 表示法

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232168.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vue获取上传文件路径_vue中文件上传及接收「建议收藏」

    vue获取上传文件路径_vue中文件上传及接收「建议收藏」准备:前端:vue环境+axios+elemen-ui后端:node.jsmulter前端代码://引入axiosimportaxiosfrom’axios’;//获取用户信息getUserInfo(){//发送请求获取用户信息getInfo().then(res=>{//接收数据let{data}=res;this.userInfo=data[0…

    2022年8月15日
    4
  • Microsoft Platform SDK 选择及在vc++6.0中的配置

    Microsoft Platform SDK 选择及在vc++6.0中的配置MicrosoftPlatformSDK选择及在vc++6.0中的配置转自http://hi.baidu.com/reddragon1314/blog/item/c6782188f00905

    2022年7月2日
    43
  • Oracle 11g R2 Rman备份与恢复

    Oracle 11g R2 Rman备份与恢复Oracle11gR2Rman备份备份与恢复的定义及分类备份的定义及分类:备份就是把数据库复制到转储设备的过程。其中,转储设备是指用于放置数据库副本的磁带或磁盘。通常也将存放于转储设备中的数据库的副本称为原数据库的备份或转储。备份是一份数据副本,从不同的角度分类如下:从物理与逻辑的角度来分类:从物理与逻辑的,备份可以分为物理备份和逻辑备份。物理备份…

    2022年5月8日
    122
  • MYSQL ERROR CODE 错误编号的意义

    mysql error code(备忘)转1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库失败1009:不能删除数据库文件导致删除数据库失败1010:不能删除数据目录导致删除数据库失败1011:删除数据库文件失败1012:不能读取系统表中的记录1020:记录已

    2022年3月9日
    44
  • redflag linux7.0 grub引导终极原创

    redflag linux7.0 grub引导终极原创很多同志在安装redflag时,安装引导时选了将引导安装在根分区而不是MBR分区,所以开机时还是只能进入XP系统而不能进入Linux系统其实要解决这个问题,引导进入redflag很简单,只要在xp下的C盘中找到menu.ls这个文件,用记事本找开,在其中添加title红旗Linux桌面7root(hd0,8)kernel/boot/vmlinuz-2.6….

    2022年8月20日
    6
  • 解决Ubuntu系统下启动root账户后Linux版本edge浏览器无法启动

    解决Ubuntu系统下启动root账户后Linux版本edge浏览器无法启动最近安装了Ubuntu双系统,原本在Windows上使用的是edge浏览器,没想到edge还有Linux的dev版本,兴高采烈的安装后发现root用户正常启动edge,这里记录下解决办法。ps:笔者系统为Ubuntu18.04.5编辑/usr/bin/microsoft-edge文件gedit/usr/bin/microsoft-edge在最后一行的启动命令:exec-a”$0″”$HERE/msedge””$@”后添加`–user-data-dir–no-sandboxexe

    2022年7月21日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号