gpt4 book ai didi

javascript - "return"语句

转载 作者:行者123 更新时间:2023-12-02 15:21:04 24 4
gpt4 key购买 nike

我对控制流中的 return 语句本身有疑问。

var rockPaperScissors = function(n) {  
var rounds = n;
var results = [];

var weapons = ['rock', 'paper', 'scissors'];

var recurse = function(roundsLeft, played) {
if( roundsLeft === 0) {
results.push(played);
return;
}

for(var i = 0; i<weapons.length; i++) {
var current = weapons[i];
recurse( roundsLeft-1, played.concat(current) );
}
};

recurse(rounds; []);
return results;
}

我想知道为什么 return 语句不写成:

return results.push(played);

有什么好处吗?如果是这样,为什么以及何时应该这样写?

最佳答案

这是因为 recurse 仅用于其副作用(即它对结果的作用),而不是其值(value)。返回仍然是必要的,以便递归触底,但除此之外,没有理由从 recurse 返回任何内容。

关于javascript - "return"语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34051203/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com