当num等于7时,为什么myAry不会被返回8次? myAry只返回一次以下代码。
function array(num) {
var myAry = ['my array'];
var i = num;
do {
i++;
return myAry;
} while (i < 15);
}
console.log(array(7));
答案 0 :(得分:1)
您的数组函数被调用一次,它返回for循环的最后一次迭代。您需要在for循环中登录到控制台。
function array(num) {
var myAry = ['my array'];
var i = num;
do {
i++;
console.log(myAry);
} while (i < 15);
}
array(7);
如果需要在其他地方使用返回的值,可以使用二维数组。
function array(num) {
var returnAry = [];
var myAry = ['my array'];
var i = num;
do {
i++;
returnAry = returnAry.concat(myAry);
} while (i < 15);
return returnAry;
}
console.log(array(7))
答案 1 :(得分:0)
我不确定您使用的语言是什么,但通常return
关键字表示采用右侧的内容,将其发送到调用此函数的任何语言,并从那里继续。它基本上结束了你的功能。
答案 2 :(得分:0)
原因是你在循环中调用return
,所以第一次循环运行时,它返回['my array']
并且循环永远不会有多次执行的机会。
为了实现您正在寻找的内容,您需要将代码更新为此
function array(num) {
var myAry = ['my array'];
var result;
do {
num++;
// update result based on what you're trying to accomplish here
} while (num < 15);
return result;
}
console.log(array(7));