1. .   Default Parameters(默认参数) in ES6

    2.    Arrow Functions (箭头函数)in ES6

    3.    Block-Scoped Constructs Let and Const(块作用域构造Let and Const)

    4.    Template Literals (模板文本)in ES6

    5.    Multi-line Strings (多行字符串)in ES6

    6.    Destructuring Assignment (解构赋值)in ES6

    7.   Classes(类) in ES6

    8.    Modules(模块) in ES6

    9.    Promises in ES6

    10.  Enhanced Object Literals (增强的对象文本)in ES6

    前三个特性已在上一篇博客中讲过,现在从第四个开始

    4.Template Literals(模板对象) in ES6

    在其它语言中,使用模板和插入值是在字符串里面输出变量的一种方式。因此,在ES5,我们可以这样组合一个字符串:

    //ES5
    var first="sun";
    var last='menghua';
    var name='My name is '+first +' '+last+'.';
    console.log(name);
    //My name is sun menghua.

    在ES6中,我们可以使用新的语法$ {NAME},并把它放在反引号

    var first="sun";
    var last='menghua';
    var name=`My name is ${first} ${last}.` ;
    console.log(name);
    //My name is sun menghua.

    5.Multi-line Strings (多行字符串)in ES6

    在ES5中,我们不得不使用以下方法来表示多行字符串:

    var poem=' wo shi yi zhi xiao qing long,\n'
    +'xiao qing long,\n '
    +'wo you yi ge xiao mi mi,\n'
    + 'xiao mi mi.'
    console.log(poem);
    /*
    wo shi yi zhi xiao qing long,
    xiao qing long,
    wo you yi ge xiao mi mi,
    xiao mi mi.
    */ 

    在ES6中,仅仅用反引号就可以解决了:

    var poem=`wo shi yi zhi xiao qing long,
    xiao qing long,
    wo you yi ge xiao mi mi,
    xiao mi mi.`
    console.log(poem);
    /*
    wo shi yi zhi xiao qing long,
    xiao qing long,
    wo you yi ge xiao mi mi,
    xiao mi mi. */

       6. Destructuring Assignment (解构赋值)in ES6

数组和对象是JS中最常用也是最重要表示形式。为了简化提取信息,ES6新增了解构,这是将一个数据结构分解为更小的部分的过程

const people = {
name: 'lux',
age: 20
}
const name = people.name
const age = people.age
console.log(name + ' --- ' + age)
//lux --- 20

在ES6之前我们就是这样获取对象信息的,一个一个获取。现在,解构能让我们从对象或者数组里取出数据存为变量,例如

{
//对象
const people = {
name: 'lux',
age: 20
}
const { name, age } = people
//必须为name,age,即原属性名;其顺序可以改变
console.log(`${name} --- ${age}`)
// lux --- 20
//数组
const color = ['red', 'blue']
const [first, second] = color
console.log(first) //'red'
console.log(second) //'blue'
}

https://www.cnblogs.com/sunmarvell/p/9109650.html

7.Class(类) in ES6      class,extends,super

ES5中有几个令人头疼的属性,事实上,js实际上并没有“类“的说法,由于过于不方便,我们用原型,原型链的形式添加了类似可以实现继承的方法。实际上这种写法由于和大多数后端语言java c#等编程语言相差甚远并且语法复杂,this指向混乱,这让很多习惯写后端语言的大神们并不习惯,终于在ES6里提供了更接近传统语言的写入引用了CLASS。

class Parents {
constructor(){
this.type = 'parents'
}
says(say){
console.log(this.type + ' says ' + say)
}
} let parent = new Parents ()
parent .says('hello') // parents says hello class Kid extends Parents {
constructor(){
super()
this.type = 'kid'
}
} let kid = new Kid()
kid .says('hi') //kid says hi

从上面的代码可以看出这种“类”的形式已经很接近传统意义了。首先定义一个类名为Parent的类,constructor(){}为构造方法,在构造方法内定义的方法与属性都是实例本身的,而constructor外的方法与属性是大家共享的。

两个类之间可以用extends来实现继承,通过extends来继承可以直接继承其要继承的类中(Parents)所有属性和方法。

supper();指父类的实例,在新建实例时子类必须在constructor(){}中调用super();由于子类没有自己的this对象,只能通过继承父类的this来进行操作,如若不调用super(),则子类无this对象。

    8.    Modules(模块) in ES6

http://www.cnblogs.com/sunmarvell/p/8819537.html

   9.    Promises in ES6

https://segmentfault.com/a/1190000007685095

ES6十大常用特性的更多相关文章

  1. C#6.0 十大常用特性

    一.字符串插值 (String Interpolation) C# 6之前我们拼接字符串时需要这样 var Name = "Jack"; var results = "H ...

  2. ES6的十大新特性(转)

    add by zhj: 该文章是由国外一哥们写的,由腾讯前端团队翻译,图片中的妹子长得挺好看的,很养眼,嘿嘿.我目前在学习ES6,这篇文章把ES6的 几个主要新特性进行了归纳总结,犹如脑图一般,让人看 ...

  3. 前端开发者不得不知的ES6十大特性

    前端开发者不得不知的ES6十大特性 转载 作者:AlloyTeam 链接:http://www.alloyteam.com/2016/03/es6-front-end-developers-will- ...

  4. Java基础学习总结(33)——Java8 十大新特性详解

    Java8 十大新特性详解 本教程将Java8的新特新逐一列出,并将使用简单的代码示例来指导你如何使用默认接口方法,lambda表达式,方法引用以及多重Annotation,之后你将会学到最新的API ...

  5. ES6的一些常用特性

    由于公司的前端业务全部基于ES6开发,于是给自己开个小灶补补ES6的一些常用特性.原来打算花两天学习ES6的,结果花了3天才勉强过了一遍阮老师的ES6标准入门(水好深,ES6没学好ES7又来了...) ...

  6. 有史来最大改变 Android 5.0十大新特性

    有史来最大改变 Android 5.0十大新特性 2014.10.16 14:51:31 来源:腾讯数码作者:腾讯数码 ( 0 条评论 )   距离Android系统上一次重大更新不到一年的时间,谷歌 ...

  7. SEO站长必备的十大常用搜索引擎高级指令

    作为一个seo人员,不懂得必要的搜索引擎高级指令,不是一个合格的seo.网站优化技术配合一些搜索引擎高级指令将使得优化工作变得简单.今日就和大家聊聊SEO站长必备的十大常用搜索引擎高级指令的那些事儿. ...

  8. Android 5.0(棒棒糖))十大新特性

    Android 5.0(棒棒糖))十大新特性 1. 全新Material Design设计风格 Android Lollipop全新的设计语言是受到了多种因素影响,是一种大胆的平面化创新.换句话说,谷 ...

  9. Java9发布回顾Java 8的十大新特性

    java9已经在北京时间9月22日正式发布,开发者可以在oracle jdk官网上下载到最新的jdk9. 今天,我们先来一起复习一下2014年发布的Java 8的十大新特性.先来喝杯java~~~ 按 ...

随机推荐

  1. MongoDB集群搭建教程收集(待实践)

    先收集,后续再实践. MongoDB的集群应该和MySQL的定位保持一致,因为要认为它就是一个数据库. 集群方式有也是有很多,比如分库,分片,主从,主主等等. 下面是收集的一些教程: http://b ...

  2. console command

    routes/console.php copy一个默认的 Artisan::command('hello', function () { $this->comment('hello world' ...

  3. 我和nupt集训队的故事

    纯水文,如有不适请ctrl+w撤离 亚洲赛刚结束.看了不少巨巨的退役贴以及岛娘在知乎上的那篇感天动地的人生经历.多少有点夜深忽梦少年事的错觉.作为一个两年前就打出gg的高龄选手,之后又强行以1次队员和 ...

  4. vue iview Select bug,在低版本浏览器中报错

    iview是个好东西,今天第一次试用,用来做了一个app,但是在安卓5.1各种报错啊,头痛的是不知道具体哪行代码错了,总是报错undefined is not a function. 倒腾了半天,原来 ...

  5. HDU 5783Divide the Sequence

    Divide the Sequence Time Limit: 5000/2500 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Othe ...

  6. Matlab7.1——启动时只显示Logo

    1. 现象 Matlab7.1在启动时只显示Matlab的Logo: 2. 解决方法 听我的吧,这个是官方办法,我也亲自试过了1结束matlab进程:2在C:\user\APPDATA\Roaming ...

  7. iOS10 国行iPhone联网权限问题处理

    在iOS10上安装新App, 第一次打开时会询问用户"是否允许应用使用数据"(仅针对国行且需要连接移动网络的设备), 如下图所示, 在用户点击允许之前, App是无法联网的, 这意 ...

  8. 【CEOI2002】【Poj 1038】Bugs Integrated, Inc.

    http://poj.org/problem?id=1038 发一下中文题面(今天考试直接被改了): 生记茶餐厅由于受杀人事件的影响,生意日渐冷清,不得不暂时歇业.四喜赋闲在家,整天抱着零食看电视,在 ...

  9. 洛谷 P1084 疫情控制 —— 二分+码力

    题目:https://www.luogu.org/problemnew/show/P1084 5个月前曾经写过一次,某个上学日的深夜,精疲力竭后只有区区10分,从此没管... #include< ...

  10. bzoj2115 [Wc2011] Xor——高斯消元 & 异或线性基

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2115 异或两次同一段路径的权值,就相当于没有走这段路径: 由此可以得到启发,对于不同的走法, ...