function getdata(){
var data = new Array(700).fill('hey');
console.log('c');
return function(index)
{
return data[index]};
}
///我正在尝试访问索引值8的数组
getdata(8)--->我没有得到预期的结果
预期结果: 嘿
答案 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))