JS中的this和纯面向对象(java,c++)中的this有点不大一样,其原因就是作用域不同,导致JS中的this的指向不明确,在java中的this指当前对象的this或当前类的this,在JS中function(){}里面没有特殊指定this的指向,这里的this时指向Window,但是在严格 ...
分类:
Web程序 时间:
2018-02-13 23:40:44
阅读次数:
527
使用注意点 箭头函数有几个使用注意点。 (1)函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象。 (2)不可以当作构造函数,也就是说,不可以使用new命令,否则会抛出一个错误。 (3)不可以使用arguments对象,该对象在函数体内不存在。如果要用,可以用 rest 参数代替。 ...
分类:
其他好文 时间:
2018-02-11 19:50:41
阅读次数:
160
传统函数: 箭头函数: 去掉了function 关键字。如果参数只有一个,可以省略小括号。小括号和大括号之间有个箭头。如果没有大括号则直接是返回值。有大括号则必须写return 传统函数: 箭头函数: 闭包:当函数执行后返回的结果必须是引用数据类型,被外界变量接受,此时这个函数不会销毁。 如: ...
分类:
其他好文 时间:
2018-02-11 16:20:30
阅读次数:
175
箭头函数适合于无复杂逻辑或者无副作用的纯函数场景下,例如:用在 map、reduce、filter 的回调函数定义中 箭头函数的亮点是简洁,但在有多层函数嵌套的情况下,箭头函数反而影响了函数的作用范围的识别度,这种情况不建议使用箭头函数 箭头函数要实现类似纯函数的效果,必须剔除外部状态。所以箭头函数 ...
分类:
其他好文 时间:
2018-02-10 14:03:40
阅读次数:
161
1. 在箭头函数出现之前,每个新定义的函数都有其自己的this值(例如,构造函数的 this 指向了一个新的对象;严格模式下的函数的 this 值为 undefined;如果函数是作为对象的方法被调用的,则其 this 指向了那个调用它的对象)。 2. 箭头函数没有自己的this,不会新产生自己作用 ...
分类:
其他好文 时间:
2018-02-09 20:25:59
阅读次数:
171
在项目中,child继承base的时候,需要重新修改base.fun的逻辑,但是有些情况下面并不是简单的覆盖,而是在base.fun的逻辑基础上进行加工处理。 刚开始接触es6的时候也许都遇到过,child重写了base的fun函数,就是不起作用 ...
分类:
其他好文 时间:
2018-02-08 12:20:10
阅读次数:
130
刚才写一个需要递归操作的函数,在使用arguments.callee的时候,报错undefined,因为arguments.callee在严格模式下会失效,以为是使用了=>箭头函数后,函数内部环境会以严格模式执行,查阅资料后才知道不可以在箭头函数中使用arguments对象,该对象在函数体内不存在。 ...
分类:
其他好文 时间:
2018-02-06 13:03:07
阅读次数:
208
ES6标准新增了一种新的函数:Arrow Function(箭头函数)。 为什么叫Arrow Function?因为它的定义用的就是一个箭头: 上面的箭头函数相当于: 箭头函数相当于匿名函数,并且简化了函数定义。箭头函数有两种格式,一种像上面的,只包含一个表达式,连{ ... }和return都省略 ...
分类:
其他好文 时间:
2018-02-05 20:12:51
阅读次数:
108
箭头函数不会创建自己的this, 而是使用 __ 封闭执行上下文的this __。 通过 call 或 apply 调用 由于this在词法层面上已经完成了绑定,通过call() 或者 apply()方法调用函数时,只是传入了参数而已,并不会修改this的指向,对this没有影响。 var adde ...
分类:
其他好文 时间:
2018-01-31 11:32:58
阅读次数:
183
redux 源码中的 applyMiddleware.js 对柯里化和箭头函数的运用 ...
分类:
Web程序 时间:
2018-01-28 20:57:10
阅读次数:
249