जावास्क्रिप्ट का from() मेथड किसी ऑब्जेक्ट से जिसमें length प्रॉपर्टी हो या किसी इटरेबल ऑब्जेक्ट से Array ऑब्जेक्ट लौटाने के लिए उपयोग किया जाता है।
सिंटैक्स इस प्रकार है:
Array.from(obj, mapFunction, thisArg)
ऊपर, पैरामीटर obj एरे में बदलने वाला ऑब्जेक्ट है, mapFunction कॉल करने के लिए मैप फंक्शन है, thisArg mapFunction एक्जीक्यूट करते समय this के रूप में उपयोग करने का मान है।
उदाहरण 1
<!DOCTYPE html>
<html>
<body>
<h2>डेमो हेडिंग</h2>
<p id="test"></p>
<script>
var arr1 = Array.from("PQRS");
var arr2 = Array.from("12345");
document.getElementById("test").innerHTML = arr1 + " and " + arr2;
</script>
</body>
आउटपुट
P,Q,R,S and 1,2,3,4,5
उदाहरण 2
<!DOCTYPE html>
<html>
<body>
<h2>डेमो हेडिंग</h2>
<p id="test"></p>
<script>
var arr1 = Array.from("PQRS");
var arr2 = Array.from("%$%#$$#$");
var arr3 = Array.from("12345");
document.getElementById("test").innerHTML = arr1 + ", " + arr2 + " and " + arr3;
</script>
</body>
उन्नत उपयोग
मैप फंक्शन के साथ
// प्रत्येक एलिमेंट को ट्रांसफॉर्म करें
Array.from([1, 2, 3], x => x * 2); // [2, 4, 6]
// एरो फंक्शन के साथ thisArg
const multiplier = { factor: 10 };
Array.from([1, 2, 3], function(x) { return x * this.factor; }, multiplier); // [10, 20, 30]
एरे-लाइक ऑब्जेक्ट्स से एरे बनाना
// arguments ऑब्जेक्ट
function sum() {
return Array.from(arguments).reduce((a, b) => a + b, 0);
}
// NodeList
const divs = document.querySelectorAll('div');
const divArray = Array.from(divs);
// Set/Map से
const set = new Set([1, 2, 3, 3, 2]);
Array.from(set); // [1, 2, 3]
// जेनरेटर से
function* gen() { yield 1; yield 2; yield 3; }
Array.from(gen()); // [1, 2, 3]
रेंज/सीक्वेंस बनाना
// 0 से 9 तक
Array.from({ length: 10 }, (_, i) => i); // [0,1,2,3,4,5,6,7,8,9]
// 1 से 10 तक
Array.from({ length: 10 }, (_, i) => i + 1); // [1,2,3,4,5,6,7,8,9,10]