在 React 组件中,每个方法的上下文都会指向该组件的实例,即自动绑定 this 为当前组件。 而且 React 还会对这种引用进行缓存,以达到 CPU 和内存的优化。在使用 ES6 classes 或者纯 函数时,这种自动绑定就不复存在了,我们需要手动实现 this 的绑定。 1.bind方法进 ...
分类:
其他好文 时间:
2019-03-12 16:55:13
阅读次数:
310
数组法代是一件很重要的操作,在 ECMAScript 5 之前主要使用 for 语句实现,这种方式不是很方便, 为此 ECMAScript 5 新增了 5 个与迭代相关的方法。 forEach:为数组中的每个元素调用定义的回调函数。 every:检查定义的回调函数如果每一项都返回true,则返回 t ...
分类:
编程语言 时间:
2019-03-12 13:58:56
阅读次数:
150
ES6里添加一个特殊的语法形式用于函数声明,叫做箭头函数。格式如下: 为什么要用箭头函数来声明一个函数?当然是为了少让你敲几个单词啦。(?ω?) 开玩笑的。 可以看到,cool()函数弄丢了this的绑定。解决的方法就是定义一个常量等于this。代码如下: 而在箭头函数中,引入了一个叫做this词法 ...
分类:
其他好文 时间:
2019-03-10 17:36:52
阅读次数:
251
arguments对象是所有(非箭头)函数中都可用的局部变量,可以使用arguments对象在函数中引用函数的参数。 该对象可以获取函数的参数值和参数长度。 如:arguments[0]、arguments[1]、arguments.length arguments对象不是一个Array,它类似于A ...
分类:
其他好文 时间:
2019-02-28 21:16:59
阅读次数:
183
1.箭头函数 1.如果箭头函数不需要参数或需要多个参数,就使用一个圆括号代表参数部分。 2.由于大括号被解释为代码块,所以如果箭头函数直接返回一个对象,必须在对象外面加上括号,否则会报错。 3.下面是一种特殊情况,虽然可以运行,但会得到错误的结果。 ...
分类:
其他好文 时间:
2019-02-22 18:35:28
阅读次数:
159
一 let 和 var 作用域 1 普通用法 for (var i = 0; i < 5; i++) { console.log(i); } for (let i = 0; i < 5; i++) { console.log(i); } 结果都是: 0,1,2,3,4 2 箭头函数(()=>{})里 ...
分类:
Web程序 时间:
2019-02-22 18:09:40
阅读次数:
225
var vm = new Vue({ /* 在方法中,this 表示该方法所属的对象。 如果单独使用,this 表示全局对象。 在函数中,this 表示全局对象。 在函数中,在严格模式下,this 是未定义的(undefined)。 在事件中,this 表示接收事件的元素。 类似 call() 和 ... ...
分类:
其他好文 时间:
2019-02-22 01:00:14
阅读次数:
150
今天遇到了一个问题,值得一记 首先在我看项目代码时发现了一个问题 有一个JS的export如下 大家可以注意一下config 这里为什么要如此写法呢? 首先这里用的时ES6的箭头函数 ()=>{} 而此种写法()=>({})等同于()=>{return {}} 其实这里我们可以直接使用config: ...
分类:
其他好文 时间:
2019-02-21 15:34:13
阅读次数:
158
1. cat.jumps 打印结果为: 7 使用箭头函数 打印结果为9 2. call apply bind扔不能改变this指向 打印结果为blue; 使用箭头函数: 打印结果为: red; 由于箭头函数没有自己的this,所以当然也就不能用call()、apply()、bind()这些方法去改变 ...
分类:
其他好文 时间:
2019-02-15 13:12:52
阅读次数:
186