我正在尝试撤消数字列表,但我得到的输出为undefined
。
我正在使用闭包来做到这一点 这是我的代码
function reverseANumber(aList) {
function reverse() {
var newList = [];
var j=0;
for(var i = aList.length - 1; i >= 0; i--)
{
newList[j] = aList[i];
j++;
}
return newList
}
reverse(aList);
}
aList=[3,2,3,1];
console.log(reverseANumber(aList));
我收到undefined
作为输出
我期待1 3 2 3
作为输出
我的代码出了什么问题?
答案 0 :(得分:3)
简单
function reverseMe (list){
return list.reverse();
};
reverseMe([1,3,2,3]); // returns 3,2,3,1
答案 1 :(得分:2)
答案 2 :(得分:1)
您忘了在反向(aList)调用之前添加一个return语句:
function reverseANumber(aList) {
function reverse() {
var newList = [];
var j = 0;
for(var i = aList.length; i >= 0; i--) {
newList[j] = aList[i];
j++;
}
return newList;
}
return reverse(aList);
}
aList = [3,2,3,1];
console.log(reverseANumber(aList));
答案 3 :(得分:0)
您刚刚在函数内部声明了一个函数,该函数无法正常工作。 试试这个:
function reverseANumber(aList) {
var newList = [];
var j=0;
for(var i = aList.length - 1; i >= 0; i--)
{
newList[j] = aList[i];
j++;
}
return newList;
}
reverse(aList);
}
aList=[3,2,3,1];
console.log(reverseANumber(aList));