4 回答
TA贡献1833条经验 获得超4个赞
第一个,MDN
this.__queue=[];
//this.__queue这不就是个数组么?
//Array.prototype.forEach()这个是遍历,自带的
语法
array.forEach(callback(currentValue, index, array){
do something
}, this)
array.forEach(callback[, thisArg])
参数
callback
为数组中每个元素执行的函数,该函数接收三个参数:
currentValue(当前值)
数组中正在处理的当前元素。
index(索引)
数组中正在处理的当前元素的索引。
array
forEach()方法正在操作的数组。
thisArg可选
可选参数。当执行回调 函数时用作this的值(参考对象)。
返回值
第二个,阮一峰 es6
this.__queue.push({fn1, fn2});
//push就不用给你介绍了吧。{fn1:fn1,fn2:fn2}只是简写。
第三个,同问题二,里面的...arg也是es6
_this.__queue.forEach(json=>{
_this.__queue.forEach(function(json){
TA贡献1873条经验 获得超9个赞
第一个问题:json哪来的?
得先知道foreach方法,他是遍历了_this.__queue(他是个数组),json就是里面的每一项。forEach()里面是函数,他只是用es6的箭头函数。
第二个问题:this.__queue.push({fn1, fn2}) 不是个对象吗?
this.__queue 首先是个数组,所以有push方法。push方法是把一个对象,放到放到数组变成数组的最后一项。
所以{fn1, fn2}放在这没有问题。{} 在js里就代表一个对象
TA贡献1848条经验 获得超10个赞
添加回答
举报