ES6新特征数字、数组、字符串


Posted in Javascript onOctober 01, 2016

一、let和const

let:声明变量,只在声明的块级作用域(大括号)内起作用[注意:let不向var那样可以自动提升]

如果一个区块内存在let或const命令,该区块就被解析成封闭作用域(暂时性死区,必须先声明再使用) [所以一个区块内只要有let,就可能存在死区,就可能会出现变量声明使用顺序的错误]

let为JavaScript增加了块级作用域

ES6中在块级作用域声明的函数不能在外部被引用,但在ES5中可以(ES5中的函数声明可以提升到全局作用域或函数作用域头部,ES6中不行,但是ES6位了避免对老代码的冲击放开了新的规定)

const声明值不能被改变的常量

const声明对象的时候指向的是地址而不是具体数据,所以不可变的是地址

let、class、const在全局声明的变量不再是全局变量,不再挂载到window对象上

二、变量的解构赋值

解构赋值:模式匹配,左右两侧通过数组的模式匹配复制,不需要一个个赋值了,如:

var [a, b, c] = [1, 2, 3] [这种事数组解构,按位置赋值]

还可以对象解构,没有次序要求,按照变量名赋值:

var {bar, foo} = {foo: “aaa”, bar: “bob”};

字符串解构:const [a, b, c, d, e] = ‘hello';

三、字符串的扩展

\uxxxx表示一个字符,后加字符的四位码点

codePointAt:正确处理4个字节储存的字符

String.fromCharCode():将码点返回成对应的字符串

for…of可以遍历字符串 比如for(let a of “hello”){console.log(a);} 打印出hello各个字母

类似indexOf()的方法:includes()是否找到参数字符串;startsWith/endsWith是否在字符串头/尾部

repeat():将原字符串复制n次返回新字符串 ‘x'.repeat(3) //xxx

模版字符串:使用反引号

字符串中可以使用正则表达式的方法:match()/replace()/search()/split()

可以为正则表达式添加u字符,用来处理中文等

四、数值的扩展

0b开头二进制;0o开头八进制

Number.isNaN()/Number.inFinite() 检测一个数是否是NaN/有限值,只对数值有效

Number.isInteger() 判断是否是整数

Math.trunc() 去除一个数的小数部分;Math.sign() 判断一个数是正数、负数、零

Math.cbrt() 计算一个数的立方根;Math.hypot() 求所有参数的平方和的平方根

五、数组的扩展

Array.from():将类数组对象转换成数组,还可以传入第二个参数,作用类似map,对每个元素操作

ES6中:var arr = Array.from(arrayLike);

ES5中:var arr = [].slice.call(arrayLike);

Array.of():将一组值转换为数组

find()方法:找到第一个符合条件的数组成员,参数是一个回调函数,每个成员都执行一次回调函数

[1, 5, 10, 15].find(function(value, index, arr) { //当前值、索引、原数组
return value > 9;
})

fill()方法:用来填充一个数组,fill(value, start, end),表示从start开始end截止使用value填充

ES6规定数组中空位的值是undefined,注意不是这个位置是undefined而事这个位置的值的undefined

以上所述是小编给大家介绍ES6新特征数字、数组、字符串,希望对大家有帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的。

Javascript 相关文章推荐
解决jQuery插件tipswindown与hintbox冲突
Nov 05 Javascript
20款效果非常棒的 jQuery 插件小结分享
Nov 18 Javascript
JavaScript/jQuery 表单美化插件小结
Feb 14 Javascript
js动态添加onload、onresize、onscroll事件(另类方法)
Dec 26 Javascript
jQuery封装的获取Url中的Get参数示例
Nov 26 Javascript
node+express+ejs制作简单页面上手指南
Nov 26 Javascript
jQuery插件FusionCharts绘制的3D饼状图效果实例【附demo源码下载】
Mar 03 Javascript
jQuery Validate 相关参数及常用的自定义验证规则
Mar 06 Javascript
javascript对HTML字符转义与反转义
Dec 13 Javascript
JS基于ES6新特性async await进行异步处理操作示例
Feb 02 Javascript
手把手教您实现react异步加载高阶组件
Apr 07 Javascript
react使用antd表单赋值,用于修改弹框的操作
Oct 29 Javascript
使用PBFunc在Powerbuilder中支付宝当面付款功能
Oct 01 #Javascript
ros::spin() 和 ros::spinOnce()函数的区别及详解
Oct 01 #Javascript
javascript代码调试之console.log 用法图文详解
Sep 30 #Javascript
JS实现表单多文件上传样式美化支持选中文件后删除相关项
Sep 30 #Javascript
微信小程序 Audio API详解及实例代码
Sep 30 #Javascript
微信小程序 Record API详解及实例代码
Sep 30 #Javascript
微信小程序 Image API实例详解
Sep 30 #Javascript
You might like
2020年4月放送!《Princess Connect Re:Dive》制作组 & 角色声优公开!
2020/03/06 日漫
PHP、Java des加密解密实例
2015/04/27 PHP
PHP文件缓存smarty模板应用实例分析
2016/02/26 PHP
php微信公众平台开发之微信群发信息
2016/09/13 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
2016/10/08 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
Laravel访问出错提示:`Warning: require(/vendor/autoload.php): failed to open stream: No such file or di解决方法
2019/04/02 PHP
NodeJS Express框架中处理404页面一个方式
2014/05/28 NodeJs
Egret引擎开发指南之编译项目
2014/09/03 Javascript
jquery实现模拟百分比进度条渐变效果代码
2015/10/29 Javascript
AngularJs Modules详解及示例代码
2016/09/01 Javascript
jQuery实现的图片轮播效果完整示例
2016/09/12 Javascript
AngularJS extend用法详解及实例代码
2016/11/15 Javascript
Vue.2.0.5实现Class 与 Style 绑定的实例
2017/06/20 Javascript
Vue中v-for的数据分组实例
2018/03/07 Javascript
js中如何完美的解析数据
2018/03/18 Javascript
基于vue循环列表时点击跳转页面的方法
2018/08/31 Javascript
layer弹出子iframe层父子页面传值的实现方法
2018/11/22 Javascript
Javascript摸拟自由落体与上抛运动原理与实现方法详解
2020/04/08 Javascript
antd的select下拉框因为数据量太大造成卡顿的解决方式
2020/10/31 Javascript
[47:36]Optic vs Newbee 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
磁盘垃圾文件清理器python代码实现
2020/08/24 Python
Python 3.8中实现functools.cached_property功能
2019/05/29 Python
Django Channels 实现点对点实时聊天和消息推送功能
2019/07/17 Python
Python pandas自定义函数的使用方法示例
2019/11/20 Python
python 实现"神经衰弱"翻牌游戏
2020/11/09 Python
美国最受欢迎的童装品牌之一:The Children’s Place
2016/07/23 全球购物
全球最大的服务市场:Fiverr
2017/01/03 全球购物
美国社交购物市场:MassGenie
2019/02/18 全球购物
美国购买体育、音乐会和剧院门票网站:SelectATicket
2019/09/08 全球购物
衰败城市英国官网:Urban Decay英国
2020/04/29 全球购物
交通事故死亡赔偿协议书
2014/12/03 职场文书
宿舍管理制度范本
2015/08/07 职场文书
2016中秋晚会开幕词
2016/03/03 职场文书
如何用python清洗文件中的数据
2021/06/18 Python
win10截图快捷键win+shift+s没有反应无法截图怎么解决?
2022/08/14 数码科技