靠谱前端培训|上海web前端培训机构-百读易莱胜官网 靠谱前端培训.png

靠谱前端培训.png
【上海校区】 专攻小班JS前端培训
当前位置:  主页 > web前端文章 > javascript >

前端开发培训ES6,ES7,ES8新增特性

2019-04-02/06:04:33

前端开发培训ES6,ES7,ES8新增特性

1.ES6includes  Array 上的一个简单实例方法,主要是查找某项元素是否在数组中(包括NaN 与 indexOf区别)。

例如:

Const arr=[1,2,3,4,NaN];
If (arr.indexof(3)>=0
{console.log(ture)}
If (arr.includes(3)>=0
{console.log(ture)}
Arr.includes(NaN)
Arr.indexof(NaN)

以往有很多人想要contains 来命名该规范,但Mootools 已经使用过这个命名,所以使用了 includes

timg.jpg

2. Es6中的运算符

加法和减法等运算分别具有 +  - 等中缀运算符,而** 中缀运算符通常用于指数运算,在 ECMAScript 2016 中,引入了 ** 代替 Math.pow 

例如:

//Instead of
Math.pow(5,2)//25
//Use
5**2 //25

3. ES7中的Object.values()

Object.values() 是一个与 Object.keys() 类似的新函数,但返回 Object 自身属性的所有值,不包括原型链中的任何值。

Const  obe={BMW:6,Tesla:5,Toyota:4};
//ES5
//Instead of
Const vals=object.keys(cars).map(key  cars[key]);
Console.log(vals);
//ES7
//use
Const values=object.values(cars);

Console.log(values);

4.ES8正则表达式中的 ‘dotall’ 标记

大家都知道在RegEx中,点(“.”)可以表示任何的单一字符,但它不能与  ,   等换行符匹配。 例如

//Before
/first.second/.test(‘first second’);  //false

此功能使点运算符可以匹配任何单个字符。为了确保不会破坏任何内容,这时需要在创建RegEx后使用 s 标记才能使其正常工作。

//ECMAscript 2018
/first.second/s.test(‘first second’);  //true notice: /s

例如:


Const re=/foo.bar/s;
Re.test(‘foo bar’);   //true
Re.dotall    //true
Re.flags   //’s’

timg (1).jpg

5.ES8在 String.prototype.replace 中使用命名组

命名组也可以在 String 的 replace 方法中使用,比如用来交换一个字符串中各个部分的位置。

例如,将firstName, lastName 更改为 lastName, firstName。

学习ES7,ES8完整资料,详情请见易莱胜官网

 


+相关文章推荐+