जावास्क्रिप्ट में कार्यात्मक प्रोग्रामिंग तरीके से एक सरणी के माध्यम से लूपिंग के कुछ मामलों का उपयोग करें :
1. बस एक सरणी के माध्यम से लूप
const myArray = [{x:100}, {x:200}, {x:300}];
myArray.forEach((element, index, array) => {
console.log(element.x); // 100, 200, 300
console.log(index); // 0, 1, 2
console.log(array); // same myArray object 3 times
});
नोट: Array.prototyp.forEach () कड़ाई से बोलने का एक कार्यात्मक तरीका नहीं है, क्योंकि इनपुट पैरामीटर के रूप में इसे लेने वाले फ़ंक्शन को मान वापस करने के लिए नहीं माना जाता है, जिसे इस प्रकार शुद्ध फ़ंक्शन के रूप में नहीं माना जा सकता है।
2. जांचें कि क्या सरणी में कोई भी तत्व एक परीक्षा पास करता है
const people = [
{name: 'John', age: 23},
{name: 'Andrew', age: 3},
{name: 'Peter', age: 8},
{name: 'Hanna', age: 14},
{name: 'Adam', age: 37}];
const anyAdult = people.some(person => person.age >= 18);
console.log(anyAdult); // true
3. एक नई सरणी में बदलना
const myArray = [{x:100}, {x:200}, {x:300}];
const newArray= myArray.map(element => element.x);
console.log(newArray); // [100, 200, 300]
नोट: मानचित्र () विधि कॉलिंग एरे में प्रत्येक तत्व पर दिए गए फ़ंक्शन को कॉल करने के परिणामों के साथ एक नया सरणी बनाता है।
4. एक विशेष संपत्ति को जोड़ो, और इसकी औसत गणना करें
const myArray = [{x:100}, {x:200}, {x:300}];
const sum = myArray.map(element => element.x).reduce((a, b) => a + b, 0);
console.log(sum); // 600 = 0 + 100 + 200 + 300
const average = sum / myArray.length;
console.log(average); // 200
5. मूल के आधार पर एक नया सरणी बनाएं लेकिन इसे संशोधित किए बिना
const myArray = [{x:100}, {x:200}, {x:300}];
const newArray= myArray.map(element => {
return {
...element,
x: element.x * 2
};
});
console.log(myArray); // [100, 200, 300]
console.log(newArray); // [200, 400, 600]
6. प्रत्येक श्रेणी की संख्या गिनें
const people = [
{name: 'John', group: 'A'},
{name: 'Andrew', group: 'C'},
{name: 'Peter', group: 'A'},
{name: 'James', group: 'B'},
{name: 'Hanna', group: 'A'},
{name: 'Adam', group: 'B'}];
const groupInfo = people.reduce((groups, person) => {
const {A = 0, B = 0, C = 0} = groups;
if (person.group === 'A') {
return {...groups, A: A + 1};
} else if (person.group === 'B') {
return {...groups, B: B + 1};
} else {
return {...groups, C: C + 1};
}
}, {});
console.log(groupInfo); // {A: 3, C: 1, B: 2}
7. विशेष मापदंड के आधार पर एक सरणी के सबसेट को पुनः प्राप्त करें
const myArray = [{x:100}, {x:200}, {x:300}];
const newArray = myArray.filter(element => element.x > 250);
console.log(newArray); // [{x:300}]
नोट: फ़िल्टर () विधि सभी तत्वों के साथ एक नया सरणी बनाता है जो प्रदान किए गए फ़ंक्शन द्वारा कार्यान्वित परीक्षण को पास करता है।
8. एक क्रमबद्ध करें
const people = [
{ name: "John", age: 21 },
{ name: "Peter", age: 31 },
{ name: "Andrew", age: 29 },
{ name: "Thomas", age: 25 }
];
let sortByAge = people.sort(function (p1, p2) {
return p1.age - p2.age;
});
console.log(sortByAge);
9. एक सरणी में एक तत्व का पता लगाएं
const people = [ {name: "john", age:23},
{name: "john", age:43},
{name: "jim", age:101},
{name: "bob", age:67} ];
const john = people.find(person => person.name === 'john');
console.log(john);
Array.prototyp.find () विधि सरणी में पहले तत्व का मान लौटाता है जो प्रदान किए गए परीक्षण फ़ंक्शन को संतुष्ट करता है।
संदर्भ