1. 箭头函数

函数的简写方式

() => {}

只有一个参数时,可以省略() ---- x => {}

只有一条语句时,可以省略{},此时这点语句的结果会作为函数的返回值返回  () => console.log('hello');

特点:

箭头函数没有自己的 this,与离他最近的一层包裹它的函数的 this 一致,如果没有函数就指向 window

箭头函数没有 prototype 属性,有 __proto__ 属性

箭头函数不能 new 调用

箭头函数不能强制修改 this 指向

2. 谈谈 this

foo()  window

obj.foo()  obj

foo.call(obj)  obj

new foo()  实例对象

箭头函数的 this 与离他最近的一层包裹它的函数的 this 一致,如果没有函数就指向 window

DOM事件  dom元素

定时器   window

3. promise

解决异步编程的一个方案/技术

解决异步编程,以同步的方式表达异步的代码, 从而解决回调地狱的问题

promise 对象有 3 种状态

初始化状态(默认情况下) pending 准备

成功的状态 (一旦变成成功的状态就会立即触发成功的回调)  fullfilled

失败的状态 (一旦变成失败的状态就会立即触发失败的回调)  rejected

使用:

new Promise((resolve, reject) => {异步代码})

Promise.resolve/reject()

Promise.all([promise1, promise2...])

promsie.then(捕获成功的状态,执行成功的回调函数).catch(捕获失败的状态,执行失败的回调函数)

4. async 函数修饰关键字

用来定义函数,真正解决回调地狱的问题,异步编程的最终解决方案

await Promise对象;

只能在 async 函数中使用

后面必须跟着 promise 对象,async 函数返回值也是pormise对象

当 promise 对象状态是初始化状态,await 会等待,直到变成成功/失败才会接着运行

await等待promise对象变成成功时,会将其返回值返回到左边去,可被变量接收

5. ES6 其他常用的语法

解构赋值

形参默认值

模板字符串 `${js 代码将被执行}`

简化对象的写法

三点运算符

Symbol 新的数据类型

iterator 新的接口,提供统一的遍历方法 for of

5. 箭头函数_this 指向_es6 常用语法的更多相关文章

  1. ES6 箭头函数 this 指向

    ES6 箭头函数 this 指向 箭头函数有几个使用注意点: 函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象. 不可以当作构造函数,也就是说,不可以使用new命令,否则会抛出一个 ...

  2. 箭头函数this指向问题

    this指向本质 箭头函数this指向的固定化,并不是因为箭头函数内部有绑定this的机制,实际原因是箭头函数根本没有自己的this,导致内部的this就是外层代码块的this.正是因为它没有this ...

  3. ES6 箭头函数this指向问题

    var name = "window"; var person1 = { name: "person1", show1: function() { consol ...

  4. es6箭头函数 this 指向问题

    es5中 this 的指向 var factory = function(){ this.a = 'a'; this.b = 'b'; this.c = { a:'a+', b:function(){ ...

  5. ES6 箭头函数this指向

    箭头函数有几个使用注意点. (1)函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象. (2)不可以当作构造函数,也就是说,不可以使用new命令,否则会抛出一个错误. (3)不可以使 ...

  6. typescript 属性默认值使用箭头函数 this指向问题

    今天注意到前端小伙伴用react 定义component class的方法的时候是通过箭头函数的方式,表示好奇. class Test extends React.Component { public ...

  7. ES6箭头函数this指向

    普通函数中的this: 1. this总是代表它的直接调用者(js的this是执行上下文), 例如 obj.func ,那么func中的this就是obj 2.在默认情况(非严格模式下,未使用 'us ...

  8. 箭头函数中可改变this作用域,回调函数用箭头函数this指向page,自定义事件用箭头函数this指向undefined

    1.回调函数中,用箭头函数改变this的作用域 success: (res)=>{ this.setData({ //此时,this指向page页面 ... }) } 2.自定义事件中,如果使用 ...

  9. js中箭头函数 及 针对箭头函数this指向问题引出的单体模式

    ES6允许使用“箭头”(=>)定义函数 var f = a = > a //等同于 var f = function(a){ return a; } 如果箭头函数不需要参数或需要多个参数, ...

随机推荐

  1. vim与程序员

    所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正 ...

  2. fstat函数

    一.函数原型 #include<sys/stat.h> #include<unistd.h> int fstat(int fildes,struct stat *buf); 返 ...

  3. CemtOS7更改yum网易 阿里云的yum源。

    一,鉴于用国外的Yum源,速度比较慢,所以想到将国外的yum源,改为国内的Yum源,著名的有网易 阿里云源.如何更改呢? 二,更改yum源为网易的. 首先备份/etc/yum.repos.d/Cent ...

  4. 移动端click事件300ms延迟

    移动端click 事件延迟300ms 一般情况下,如果没有经过特殊处理,移动端浏览器在派发点击事件的时候,通常会出现300ms左右的延迟.也就是说,当我们点击页面的时候移动端浏览器并不是立即作出反应, ...

  5. java反射常用类

    测试实体类 public class TestClass { public String classInfo; public String getClassInfo() { return classI ...

  6. Django之文件上传

    一.form表单上传文件 注意: 1.form上需要加enctype="multipart/form-data" 2.form提交的地址需要以/结尾 def form_file(r ...

  7. Eclipse编译运行没问题,但执行mvn clean install跑单元测试失败的原因解析

    问题描述:mvn clean install编译工程并运行单元测试出现如下错误 Tests run: 3, Failures: 0, Errors: 2, Skipped: 0, Time elaps ...

  8. 【原创】大数据基础之Azkaban(1)简介、源代码解析

    Azkaban3.45 一 简介 1 官网 https://azkaban.github.io/ Azkaban was implemented at LinkedIn to solve the pr ...

  9. cocos2dx-lua 圆角矩形 圆角图片 drawNode

    使用的官方类是:drawNode 函数是:drawNode:drawPolygon() C++函数的参数说明: //画多边形,verts为点集,count为点数,fillColor为填充颜色,bord ...

  10. Java实现大数乘法运算

    基本思路:将输入的两个大数以字符串的形式存储,然后转化成整型数组存储,通过整型数组进行乘法运算(采用分治的思想) 即乘法分配律,如AB*CD=AC(AD+BC)BD,将两个数组逐位相乘的结果对位存放在 ...