हमें एक JavaScript फ़ंक्शन लिखना है जो एकमात्र तर्क के रूप में शाब्दिक मूल्यों की एक नेस्टेड सरणी लेता है। फ़ंक्शन को एक नई सरणी बनानी चाहिए जिसमें इनपुट सरणी में मौजूद सभी शाब्दिक तत्व हों लेकिन नेस्टिंग के बिना।
उदाहरण के लिए -
यदि इनपुट सरणी है -
const arr = [
1, 3, [5, 6, [7, [6, 5], 4], 3], [4]
];
तो आउटपुट सरणी होनी चाहिए -
const output = [1, 3, 5, 6, 7, 6, 5, 4, 3, 4];
उदाहरण
निम्नलिखित कोड देखें:
const arr = [
1, 3, [5, 6, [7, [6, 5], 4], 3], [4]
];
const flattenArray = (arr = []) => {
const res = [];
for (let i = 0; i < arr.length; i++) {
const el = arr[i];
if (Array.isArray(el)) {
res.push(...flattenArray(el));
} else {
res.push(el);
};
};
return res;
};
console.log(flattenArray(arr));
आउटपुट
कंसोल पर निम्नलिखित आउटपुट प्राप्त होगा:
[
1, 3, 5, 6, 7,
6, 5, 4, 3, 4
]