Skip to content

ES6 特性 #8

Open
Open
@sanshuiwang

Description

@sanshuiwang

默认参数

模版字符串

解构赋值

Generator生成器

总结:

对象文本-增强对象字面量

在ES5中,对象中要包含key和value

var bar = 'bar';
var foo = function (){  }
var baz = {  bar: bar,  foo: foo  };

在ES6中,对象中直接写变量

var bar = 'bar';
var foo = function (){  }
var baz = {  bar,  foo };

箭头函数

对于箭头函数,我们要思考箭头函数解决了什么问题?
这样的话:

  1. 就需要与ES5的普通函数做比较
  2. 指出作用:更简短的函数,不绑定this
    重要的是this问题:
    箭头函数 - 不会创建自己的this,它只会从自己的作用域链的上一层继承this
    普通函数 - 创建新的普通函数就会有自己的this

拓展:

注意:
严格模式下:
image

let,const解决了什么问题?
let/const, var作用域:
let/var 作用域规则
let 语句声明一个块级作用域的本地变量。在程序顶部,并不会向global object中创建属性。
var 语句声明的变量,会被子块声明相同变量所影响。在程序顶部,会向global object中创建属性。

var的循环中, 可以掏出来普通函数的闭包,讲解闭包是个什么玩意,说说闭包解决了什么问题,再说闭包存在的问题适合用let,const解决。

拓展:
闭包

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions