मेरे पास निम्न सरणी है और मैं इससे एक अनियंत्रित सूची बनाना चाहता हूं, लेकिन मुझे उचित प्रारूप में अनियंत्रित सूची उत्पन्न करने में परेशानी हो रही है। मैंने इसी तरह के प्रश्न खोजे हैं लेकिन मौजूदा समाधानों में से कोई भी मेरी समस्या के लिए काम नहीं करता है।जावास्क्रिप्ट: सरणी से अनियंत्रित सूची कैसे बनाएं?
var myArray = ['Value 1', ['Inner value 1', 'Inner value 2', 'Inner value 3', 'Inner value 4'], 'Value 2', 'Value 3', 'Value 4', 'Value 5', 'Value 6'];
यहाँ मेरी जावास्क्रिप्ट कोड है:
function arrToUl(arr) {
var div = document.getElementById('myList');
var ul = document.createElement('ul');
for (var i = 0; i < arr.length; i++) {
if (arr[i] instanceof Array) {
var list = arrToUl(arr[i]);
} else {
var li = document.createElement('li');
li.appendChild(document.createTextNode(arr[i]));
console.log(ul.appendChild(li));
}
div.appendChild(ul);
}
}
arrToUl(myArray);
ऊपर कोड निम्न परिणाम उत्पादन किया जाता है:
<ul>
<li>Value 1</li>
<li>Inner Value 1</li>
<li>Inner Value 2</li>
<li>Inner Value 3</li>
<li>Inner Value 4</li>
<li>Value 2</li>
<li>Value 3</li>
<li>Value 4</li >
<li>Value 5</li >
<li>Value 6</li>
लेकिन परिणाम के नीचे की तरह दिखना चाहिए:
<ul>
<li>Value 1
<ul>
<li>Inner Value 1</li>
<li>Inner Value 2</li>
<li>Inner Value 3</li>
<li>Inner Value 4</li>
</ul>
</li>
<li>Value 2</li>
<li>Value 3</li>
<li>Value 4</li>
<li>Value 5</li>
<li>Value 6</li>
आपकी मदद के लिए धन्यवाद।
Q: परिणाम होना चाहिए अगर myArray = [ 'मूल्य 1', [ 'इनर मूल्य 1', 'इनर मूल्य 2', 'इनर मान 3', 'इनर मूल्य 4 '], [' आंतरिक मूल्य 5 ',' आंतरिक मूल्य 6 ',' आंतरिक मूल्य 7 ',' आंतरिक मूल्य 8 '],' मान 2 ',' मान 3 ',' मान 4 ',' मान 5 ', 'मूल्य 6']? –
एक ऐरे का पता लगाने के लिए * exampleof * का उपयोग अविश्वसनीय है, इसके बजाय [* Array.isArray *] (http://ecma-international.org/ecma-262/7.0/index.html#sec-array.isarray) का उपयोग करें। – RobG