如果之前有人问过这个问题,我是一个相对较新的编码人员而不太关心要搜索的关键字。
此函数为稍后的超时分配一些随机值:
function getDelays(tonesTotal){
var return_array = new Array();
for (var i = 0; i < tonesTotal; i++)
{
var r = getRandInt(0, 600);
var delay = r * 1000;
return_array.push(delay);
}
console.log(return_array);
return return_array;
}
以这种方式,控制台正确记录return_array
...但是按顺序翻转:
return return_array;
console.log(return_array);
......控制台是安静的。为什么呢?
答案 0 :(得分:2)
return
语句退出当前函数。
不会运行其他代码。
答案 1 :(得分:2)
这实际上意味着,不会达到return语句之后的任何内容,因此不会执行。有IDE编辑器会警告你这个问题。
答案 2 :(得分:0)
return
语句退出函数,并且不运行下一个代码语句。如果您使用像ESLint,JSLint这样的linter工具,他们将显示警告 无法访问代码 。
return语句结束函数执行并指定要返回给函数调用者的值。如果您未在return语句中指定值并使用它return
,则函数将返回undefined
。
答案 3 :(得分:0)
return
语句从函数退出程序执行并返回调用函数的位置。不调用console.log()
的原因是因为如果执行return语句,则永远不会到达该函数下的所有代码。