自從我開始編程以來,我似乎瞄準了全局變量,並且發現在沒有它們的情況下很難工作,並且發現在遞歸函數中特別困難。有人可以幫助我使用這段代碼來使它免於全局變量嗎?另外,有沒有可以幫助改變思維方式的參考,所以我最終並不覺得對它們有需要?我覺得代碼需要改變,但我不知道是什麼。在這段代碼中使用全局變量的最佳選擇
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()返回的值可以完成您的工作..我想 –