永发信息网

javascript代码问题求解释,里面的index是怎么来的,后面(function(index){})(i)里面的代码解释下。

答案:2  悬赏:60  手机版
解决时间 2021-01-26 02:18
  • 提问者网友:黑米和小志
  • 2021-01-25 17:42
var pageData = {}
var maskNum = 4
pageData.data = {}
for(var i = 1; i <= maskNum; ++i) {
pageData.data[`hidden${i}`] = true;

(function(index) {

pageData[`tap${index}`] = function(e) {
var obj = {}
obj[`hidden${index}`] = false
this.setData(obj)
}
pageData[`mask${index}`] = function(e) {
var obj = {}
obj[`hidden${index}`] = true
this.setData(obj)
}
})(i);
}
最佳答案
  • 五星知识达人网友:躲不过心动
  • 2021-01-25 18:38
index 是参数。传递过去的,这种方式是立即执行函数IIFE的模式。
(function( index ){
})( i );
相当于-->
var fnName= function( index ){
}
fnName(i);
--
里面函数的意思:
pageData[`tap${index}`] = function(e) {
var obj = {}
obj[`hidden${index}`] = false
this.setData(obj)
}
pageData[`mask${index}`] = function(e) {
var obj = {}
obj[`hidden${index}`] = true
this.setData(obj)
}
想pageData里面放置两个函数
pageData 是一个对象,[`tap${index}`] 这是es6的写法,相当于(假定i =0)pageData['tab0'] = xxx
obj[`hidden${index}`] = false 这个跟上面一样。就是一个普通赋值。
全部回答
  • 1楼网友:妄饮晩冬酒
  • 2021-01-25 19:28
我是来看评论的
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯