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 相关文章推荐
“不能执行已释放的Script代码”错误的原因及解决办法
Sep 09 Javascript
javascript面向对象之定义成员方法实例分析
Jan 13 Javascript
纯javaScript、jQuery实现个性化图片轮播【推荐】
Jan 08 Javascript
原生js实现商品放大镜效果
Jan 12 Javascript
AngularJS中使用three.js的实例详解
Jul 21 Javascript
使用Node.js搭建静态资源服务详细教程
Aug 02 Javascript
关于meta viewport中target-densitydpi属性详解(推荐)
Aug 18 Javascript
js定时器实现倒计时效果
Nov 05 Javascript
VUE脚手架具体使用方法
May 20 Javascript
微信小程序动画组件使用解析,类似vue,且更强大
Aug 01 Javascript
layui时间控件选择时间范围的实现方法
Sep 28 Javascript
10分钟学会js处理json的常用方法
Dec 06 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递归获取目录内文件(包含子目录)封装类分享
2013/12/25 PHP
php调用自己java程序的方法详解
2016/05/13 PHP
php成功操作redis cluster集群的实例教程
2019/01/13 PHP
JavaScript 设计模式 安全沙箱模式
2010/09/24 Javascript
JS实现下拉框的动态添加(附效果)
2013/04/03 Javascript
JS实现文件动态顺序载入的方法
2015/03/07 Javascript
JavaScript每天定时更换皮肤样式的方法
2015/07/01 Javascript
JavaScript实现自动消除按钮功能的方法
2015/08/05 Javascript
基于JavaScript实现购物网站商品放大镜效果
2016/09/06 Javascript
快速实现jQuery多级菜单效果
2017/02/01 Javascript
js实现简单的手风琴效果
2017/02/27 Javascript
Vue学习之路之登录注册实例代码
2017/07/06 Javascript
jquery版轮播图效果和extend扩展
2017/07/18 jQuery
Vue2.5 结合 Element UI 之 Table 和 Pagination 组件实现分页功能
2018/01/26 Javascript
vue+vuex+axios实现登录、注册页权限拦截
2018/03/09 Javascript
Vue导出页面为PDF格式的实现思路
2018/07/31 Javascript
JS实现“全选”和"全不选"功能代码实例
2020/02/06 Javascript
react ant Design手动设置表单的值操作
2020/10/31 Javascript
[00:17]天涯墨客一技能展示
2018/08/25 DOTA
python根据距离和时长计算配速示例
2014/02/16 Python
Python中import机制详解
2017/11/14 Python
django使用django-apscheduler 实现定时任务的例子
2019/07/20 Python
python模块和包的应用BASE_PATH使用解析
2019/12/14 Python
PyQt使用QPropertyAnimation开发简单动画
2020/04/02 Python
Django中的模型类设计及展示示例详解
2020/05/29 Python
完美解决keras保存好的model不能成功加载问题
2020/06/11 Python
PyTorch中Tensor的数据类型和运算的使用
2020/09/03 Python
使用css创建三角形 使用CSS3创建3d四面体原理及代码(html5实践)
2013/01/06 HTML / CSS
用HTML5制作视频拼图的教程
2015/05/13 HTML / CSS
Banana Republic欧盟:美国都市简约风格的代表品牌
2018/05/09 全球购物
琳达·法罗眼镜英国官网:Linda Farrow英国
2021/01/19 全球购物
办公室文秘岗位职责
2013/11/15 职场文书
宣传保护环境的公益广告词
2014/03/13 职场文书
会计电算化专业求职信
2014/06/10 职场文书
小学少先队工作总结2015
2015/05/26 职场文书
JavaScript实例 ODO List分析
2022/01/22 Javascript