Tôi đang cố gắng làm phẳng mảng lồng nhau trong khi vẫn giữ thứ tự, ví dụ: [[1, 2], 3, [4, [[5]]]]
phải được chuyển đổi thành [1, 2, 3, 4, 5]
.Làm phẳng mảng lồng nhau bằng cách sử dụng đệ quy trong JavaScript
Tôi đang cố gắng sử dụng đệ quy để làm như vậy, nhưng mã bên dưới không hoạt động và tôi không hiểu tại sao. Tôi biết có những phương pháp khác để làm điều đó, nhưng tôi muốn biết có gì sai với điều này.
function flatten (arr) {
var newArr = [];
for (var i = 0; i < arr.length; i++) {
if (Array.isArray(arr[i])) {
flatten(arr);
} else {
newArr.push(arr[i]);
}
}
return newArr;
}
flatten([[1, 2], 3, [4, [[5]]]]);
Cảm ơn
Chức năng của bộ điều khiển hơi nước là gì? – AnthonyDJ
Xin lỗi, đó là một trong những thách thức của freecodecamp và tôi đã đổi tên cho một cái gì đó mang tính mô tả hơn, nhưng tôi quên điều đó. Đó không phải là vấn đề mặc dù. – user1576121