ES6特性整理

1、新增了 let 和 const 命令
let命令 声明变量,它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。
const声明一个只读的常量。一旦声明,常量的值就不能改变。但当常量赋值为一个Object的时候。const常量是可以进行属性修改的。(指针)
2、数组的解构赋值
ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。以前,为变量赋值,只能直接指定值。

let a = 1;
let b = 2;
let c = 3;

ES6 允许写成下面这样。

let [a, b, c] = [1, 2, 3];
//如果解构不成功,变量的值就等于undefined。
let [x, y, ...z] = ['a'];
x // "a"
y // undefined
z // []

3、字符串的扩展
模板字符串(template string)是增强版的字符串,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量。
添加了新的方法
includes():返回布尔值,表示是否找到了参数字符串。
startsWith():返回布尔值,表示参数字符串是否在原字符串的头部。
endsWith():返回布尔值,表示参数字符串是否在原字符串的尾部。
repeat()
repeat方法返回一个新字符串,表示将原字符串重复n次。
4、正则的扩展
字符串的正则方法
字符串对象共有 4 个方法,可以使用正则表达式:match()replace()search()split()
ES6 将这 4 个方法,在语言内部全部调用RegExp的实例方法,从而做到所有与正则相关的方法,全都定义在RegExp对象上。
5、数值的扩展
Number.parseInt(), Number.parseFloat()
ES6 将全局方法parseInt()和parseFloat(),移植到Number对象上面,行为完全保持不变。
Number.isInteger()
Number.isInteger()用来判断一个数值是否为整数。
Number.EPSILON
ES6 在Number对象上面,新增一个极小的常量Number.EPSILON。根据规格,它表示 1 与大于 1 的最小浮点数之间的差。

Math.trunc方法用于去除一个数的小数部分,返回整数部分。
Math.sign方法用来判断一个数到底是正数、负数、还是零。对于非数值,会先将其转换为数值。
Math.fround() Math.fround方法返回一个数的32位单精度浮点数形式。

6、函数的扩展
ES6 允许为函数的参数设置默认值,即直接写在参数定义的后面。

function log(x, y = 'World') {
  console.log(x, y);
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • [TOC] 参考阮一峰的ECMAScript 6 入门参考深入浅出ES6 let和const let和const都...
    郭子web阅读 1,855评论 0 1
  • 三,字符串扩展 3.1 Unicode表示法 ES6 做出了改进,只要将码点放入大括号,就能正确解读该字符。有了这...
    eastbaby阅读 1,601评论 0 8
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,281评论 0 4
  • 我们缺少的不是机遇,而是对机遇的把握;我们缺欠的不是财富,而是创造财富的本领;我们缺乏的不是知识,而是学而不厌的态...
    姜月萍阅读 175评论 0 0
  • “嘟…嘟…嘟…嘟…嘟…嘟,对不起,您拨打的电话暂时无人接听,请稍后再拨。” 他离开那天这个城市下着倾盆大雨,那一句...
    莫许吖阅读 469评论 2 5