我们如何在主函数内部调用带有参数的函数

时间:2019-08-02 18:05:45

标签: javascript

function getdata(){
   var data = new Array(700).fill('hey');
   console.log('c');
   return function(index)
   {
   return data[index]};
}

///我正在尝试访问索引值8的数组

getdata(8)--->我没有得到预期的结果

预期结果: 嘿

2 个答案:

答案 0 :(得分:6)

很抱歉,但是我没有足够的声誉来发表评论,因此解决方案是将其运行为:

getdata()(8)

答案 1 :(得分:2)

这是因为getdata返回了您需要再次调用的函数。

function getdata(){
   var data = new Array(700).fill('hey');
   console.log('c');
   return function(index)
   {
      return data[index]
   };
}
console.log(getdata()(8))

或者,如果您不想使用()()语法,只需返回调用getdata内部的内部函数

function getdata(){
   var data = new Array(700).fill('hey');
   console.log('c');
   return function(index)
   {
      return data[index]
   }(...arguments);
   
}
console.log(getdata(8))

相关问题