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 相关文章推荐
js下用gb2312编码解码实现方法
Dec 31 Javascript
JQuery 文本框使用小结
May 22 Javascript
JavaScript XML和string相互转化实现代码
Jul 04 Javascript
jQuery判断iframe中元素是否存在的方法
May 11 Javascript
JS实现根据出生年月计算年龄
Jan 10 Javascript
jquery单行文字向上滚动效果示例
Mar 06 Javascript
js操作输入框提示信息且响应鼠标事件
Mar 25 Javascript
jQuery实现的输入框选择时间插件用法实例
Feb 28 Javascript
javascript时间排序算法实现活动秒杀倒计时效果
Jan 28 Javascript
js实现html table 行,列锁定的简单实例
Oct 13 Javascript
JavaScript实现简单精致的图片左右无缝滚动效果
Mar 16 Javascript
nuxt.js中间件实现拦截权限判断的方法
Nov 21 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 函数语法介绍一
2009/06/14 PHP
基于PHP一些十分严重的缺陷详解
2013/06/03 PHP
PHP file_get_contents设置超时处理方法
2013/09/30 PHP
php实现微信扫码支付
2017/03/26 PHP
swoole锁的机制代码实例讲解
2021/03/04 PHP
javascript suggest效果 自动完成实现代码分享
2012/02/17 Javascript
基于jquery插件制作左右按钮与标题文字图片切换效果
2013/11/07 Javascript
jQuery设置与获取HTML,文本和值的简单实例
2014/02/26 Javascript
js delete 用法(删除对象属性及变量)
2014/08/24 Javascript
jQuery购物车插件jsorder用法(支持后台处理程序直接转换成DataTable处理)
2016/06/08 Javascript
浅谈jquery上下滑动的注意事项
2016/10/13 Javascript
火狐和ie下获取javascript 获取event的方法(推荐)
2016/11/26 Javascript
详解Vue.js——60分钟组件快速入门(上篇)
2016/12/05 Javascript
AngularJS使用ng-repeat和ng-if实现数据的删选显示效果示例【适用于表单数据的显示】
2016/12/13 Javascript
Vue 框架之动态绑定 css 样式实例分析
2018/11/14 Javascript
Vue中rem与postcss-pxtorem的应用详解
2019/11/20 Javascript
Python 3.x 新特性及10大变化
2015/06/12 Python
Python工程师面试题 与Python基础语法相关
2016/01/14 Python
详谈python read readline readlines的区别
2017/09/22 Python
python实现txt文件格式转换为arff格式
2018/05/31 Python
使用Python开发SQLite代理服务器的方法
2018/12/07 Python
Python实现八皇后问题示例代码
2018/12/09 Python
对Python定时任务的启动和停止方法详解
2019/02/19 Python
Python内存管理实例分析
2019/07/10 Python
如何使用Python破解ZIP或RAR压缩文件密码
2020/01/09 Python
Python识别html主要文本框过程解析
2020/02/18 Python
Python之关于类变量的两种赋值区别详解
2020/03/12 Python
美国最大网上鞋店:Zappos
2016/07/25 全球购物
销售工作人员的自我评价分享
2013/11/10 职场文书
岳父生日宴会答谢词
2014/01/13 职场文书
创业资金计划书
2014/02/06 职场文书
庆元旦广播稿
2014/02/10 职场文书
海飞丝的广告词
2014/03/20 职场文书
机关作风建设整改方案
2014/10/27 职场文书
管理失职检讨书范文
2015/05/05 职场文书
校园文化艺术节开幕词
2016/03/04 职场文书