Javascript6中字符串的四个新用法分享


Posted in Javascript onSeptember 11, 2016

以下就是JavaScript6中字符串的四个新用法:

一、Unicode字符的新表示方法

Unicode字符通常是21个bit的,而普通的JavaScript字符(大部分)是16bit的,可以编码成UTF-16。超过16bit的字符需要用2个常规字符表示。

比如,下面的的代码将会输出一个Unicode小火箭字符(‘\uD83D\uDE80'),你可以在浏览器的console里试一下:

console.log('\uD83D\uDE80');

在 ECMAScript 6 里,可以使用新的表示方法,更简洁:

console.log('\u{1F680}');

二、多行字符串定义和模板字符串

模板字符串提供了三个有用的语法功能。

首先,模板字符串支持嵌入字符串变量:

let first = 'Jane';
  let last = 'Doe';
  console.log(`Hello ${first} ${last}!`);
    // Hello Jane Doe!

第二,模板字符串支持直接定义多行字符串:

let multiLine = `
  This is
  a string
  with multiple
  lines`;

第三,如果你把字符串加上String.raw前缀,字符串将会保持原始状况。反斜线(\)将不表示转义,其它专业字符,比如 \n 也不会被转义:

let raw = String.raw`Not a newline: \n`;
  console.log(raw === 'Not a newline: \\n'); // true

三、循环遍历字符串

字符串可遍历循环,你可以使用 for-of 循环字符串里的每个字符:

for (let ch of 'abc') {
    console.log(ch);
  }
  // Output:
  // a
  // b
  // c

而且,你可以使用拆分符 (...) 将字符串拆分成字符数组:

let chars = [...'abc'];
    // ['a', 'b', 'c']

四、字符串包含判断和重复复制字符串

有三个新的方法能检查一个字符串是否包含另外一个字符串:

> 'hello'.startsWith('hell')
  true
  > 'hello'.endsWith('ello')
  true
  > 'hello'.includes('ell')
  true

这些方法有一个可选的第二个参数,指出搜索的起始位置:

> 'hello'.startsWith('ello', 1)
  true
  > 'hello'.endsWith('hell', 4)
  true
  
  > 'hello'.includes('ell', 1)
  true
  > 'hello'.includes('ell', 2)
  false

repeat()方法能重复复制字符串:

> 'doo '.repeat(3)
  'doo doo doo '

总结

以上就是关于Javascript6中字符串的四个新用法,大家都学会了吗?希望这篇文章对大家能有所帮助,如果有疑问大家可以留言交流。

Javascript 相关文章推荐
JavaScript语法着色引擎(demo及打包文件下载)
Jun 13 Javascript
让 JavaScript 轻松支持函数重载 (Part 2 - 实现)
Aug 04 Javascript
有关于eclipse配置spket需要注意的一些地方
Apr 07 Javascript
html+js实现动态显示本地时间
Sep 21 Javascript
js图片处理示例代码
May 12 Javascript
浅谈jQuery中replace()方法
May 13 Javascript
javascript实现根据iphone屏幕方向调用不同样式表的方法
Jul 13 Javascript
jQuery验证插件validate使用方法详解
Sep 13 Javascript
利用yarn实现一个webpack+react种子
Oct 25 Javascript
ES6中Class类的静态方法实例小结
Oct 28 Javascript
ligerUI的ligerDialog关闭刷新的方法
Sep 27 Javascript
Node.js API详解之 vm模块用法实例分析
May 27 Javascript
JavaScript制作简单分页插件
Sep 11 #Javascript
关于vue.js弹窗组件的知识点总结
Sep 11 #Javascript
JavaScript常用代码书写规范的超全面总结
Sep 11 #Javascript
Javascript实现前端简单的路由实例
Sep 11 #Javascript
JavaScript中Array的实用操作技巧分享
Sep 11 #Javascript
JS实现六边形3D拖拽翻转效果的方法
Sep 11 #Javascript
最全面的百度地图JavaScript离线版开发
Sep 10 #Javascript
You might like
简单的PHP多图上传小程序代码
2011/07/17 PHP
Thinkphp中数据按分类嵌套循环实现方法
2014/10/30 PHP
php面向对象中static静态属性与方法的内存位置分析
2015/02/08 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
javascript 获取图片颜色
2009/04/05 Javascript
js 数值项目的格式化函数代码
2010/05/14 Javascript
Jquery AJAX 用于计算点击率(统计)
2010/06/30 Javascript
js实现幻灯片播放图片示例代码
2013/11/07 Javascript
jquery图片播放浏览插件prettyPhoto使用详解
2014/12/19 Javascript
jQuery+jRange实现滑动选取数值范围特效
2015/03/14 Javascript
JavaScript调用客户端Java程序的方法
2015/07/27 Javascript
Ionic3 UI组件之Gallery Modal详解
2017/06/07 Javascript
谈谈React中的Render Props模式
2018/12/06 Javascript
webpack4手动搭建Vue开发环境实现todoList项目的方法
2019/05/16 Javascript
vue中实现Monaco Editor自定义提示功能
2019/07/05 Javascript
vue2.0项目集成Cesium的实现方法
2019/07/30 Javascript
Vue的transition-group与Virtual Dom Diff算法的使用
2019/12/09 Javascript
vue mvvm数据响应实现
2020/11/11 Javascript
[44:58]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第二场
2018/04/06 DOTA
Python使用win32com实现的模拟浏览器功能示例
2017/07/13 Python
Python中static相关知识小结
2018/01/02 Python
关于Numpy中的行向量和列向量详解
2019/11/30 Python
Python selenium实现断言3种方法解析
2020/09/08 Python
Python中生成ndarray实例讲解
2021/02/22 Python
后勤自我鉴定
2013/10/13 职场文书
出纳岗位职责模板
2013/11/27 职场文书
应付会计岗位职责
2013/12/12 职场文书
财务会计毕业生个人求职信
2014/02/03 职场文书
学校消防演习方案
2014/02/19 职场文书
大学应届毕业生求职信
2014/05/24 职场文书
美德少年事迹材料500字
2014/08/19 职场文书
关于运动会广播稿200字
2014/10/08 职场文书
开会通知短信大全
2015/04/20 职场文书
2015年扫黄打非工作总结
2015/05/13 职场文书
小学英语听课心得体会
2016/01/14 职场文书
JavaScript执行机制详细介绍
2021/12/06 Javascript