プログラミングを開始して以来、グローバル変数を目指しているように見え、それらなしでは作業が難しく、再帰関数では特に困難でした。誰かがグローバル変数を無料にするためにこのコードを教えてくれますか?また、私は彼らの必要性を感じさせないように思考の方法を変えるのに役立つ参考資料がありますか?私は、コードが変わる必要があると思うような形で何かを感じますが、私は何がわかりません。このコードでグローバル変数を使用することに代わる最良の選択
var res = [];
function steamrollArray(arr) {
// I'm a steamroller, baby
func(arr);
console.log(res);
return res;
}
steamrollArray([1, {}, [3, [[4]]]]);
function func(array){
for (var i=0; i<array.length ; i++){
if (Array.isArray(array[i])){
func(array[i]);
}
else {
res.push(array[i]);
}
}
}
FYI、このための通常の名前は* *は平らです。 – Barmar
関数func()から値を返すだけで作業ができます。 –