జావాస్క్రిప్ట్ అర్రేల శక్తిని అన్లాక్ చేయండి! ఈ గైడ్ సమర్థవంతమైన డేటా మానిప్యులేషన్ కోసం అవసరమైన అర్రే మెథడ్స్ను కవర్ చేస్తుంది, మీ డెవలప్మెంట్ నైపుణ్యాలను మరియు కోడ్ నాణ్యతను పెంచుతుంది.
ప్రతి డెవలపర్ ప్రావీణ్యం పొందాల్సిన అర్రే మెథడ్స్
జావాస్క్రిప్ట్లో అర్రేలు ప్రాథమిక డేటా స్ట్రక్చర్లు, మరియు సమర్థవంతమైన మరియు చక్కని కోడ్ కోసం అర్రే మెథడ్స్లో ప్రావీణ్యం పొందడం చాలా ముఖ్యం. ఈ మెథడ్స్ మీకు అర్రేలలో నిల్వ ఉన్న డేటాను మానిప్యులేట్ చేయడానికి, రూపాంతరం చేయడానికి, మరియు విశ్లేషించడానికి అనుమతిస్తాయి, ఇది మీ సమయాన్ని ఆదా చేస్తుంది మరియు మీ కోడ్ రీడబిలిటీని మెరుగుపరుస్తుంది. ఈ గైడ్ ప్రతి డెవలపర్కు తెలియాల్సిన అత్యంత అవసరమైన అర్రే మెథడ్స్ను ప్రాక్టికల్ ఉదాహరణలు మరియు వినియోగ సందర్భాలతో వివరిస్తుంది.
అర్రే మెథడ్స్లో ఎందుకు ప్రావీణ్యం పొందాలి?
- సామర్థ్యం: అర్రే మెథడ్స్ అర్రేలపై సాధారణ ఆపరేషన్లను చేయడానికి ఆప్టిమైజ్ చేయబడిన మరియు సంక్షిప్త మార్గాలను అందిస్తాయి.
- రీడబిలిటీ: అంతర్నిర్మిత మెథడ్స్ను ఉపయోగించడం వలన మీ కోడ్ అర్థం చేసుకోవడానికి మరియు మెయింటెయిన్ చేయడానికి సులభం అవుతుంది.
- ఫంక్షనల్ ప్రోగ్రామింగ్: చాలా అర్రే మెథడ్స్ ఫంక్షనల్ ప్రోగ్రామింగ్ శైలిని ప్రోత్సహిస్తాయి, ఇది శుభ్రమైన మరియు సులభంగా టెస్ట్ చేయగల కోడ్కు దారితీస్తుంది.
- క్రాస్-బ్రౌజర్ కంపాటిబిలిటీ: జావాస్క్రిప్ట్ అర్రే మెథడ్స్కు ఆధునిక బ్రౌజర్లలో విస్తృతంగా మద్దతు ఉంది.
అవసరమైన అర్రే మెథడ్స్
1. అర్రేల ద్వారా ఇటరేట్ చేయడం: forEach()
forEach()
మెథడ్ అర్రేలోని ప్రతి ఎలిమెంట్కు ఒకసారి అందించిన ఫంక్షన్ను ఎక్జిక్యూట్ చేస్తుంది. ఇది అర్రే ఎలిమెంట్స్పై ఇటరేట్ చేయడానికి మరియు వాటిపై చర్యలు తీసుకోవడానికి ఒక సులభమైన మార్గం.
సింటాక్స్:
array.forEach(function(currentValue, index, array) {
// ప్రతి ఎలిమెంట్కు ఎక్జిక్యూట్ చేయవలసిన కోడ్
});
ఉదాహరణ:
const numbers = [1, 2, 3, 4, 5];
numbers.forEach(number => {
console.log(number * 2);
});
// అవుట్పుట్: 2, 4, 6, 8, 10
వినియోగ సందర్భం: ఒక జాబితాలో ఐటమ్స్ ప్రదర్శించడం, అర్రే ఎలిమెంట్స్ యొక్క ప్రాపర్టీలను అప్డేట్ చేయడం.
2. అర్రేలను రూపాంతరం చేయడం: map()
map()
మెథడ్ కాలింగ్ అర్రేలోని ప్రతి ఎలిమెంట్పై అందించిన ఫంక్షన్ను కాల్ చేసిన ఫలితాలతో ఒక కొత్త అర్రేను సృష్టిస్తుంది. ఇది డేటాను ఒక ఫార్మాట్ నుండి మరొక ఫార్మాట్కు మార్చడానికి చాలా ఉత్తమమైనది.
సింటాక్స్:
const newArray = array.map(function(currentValue, index, array) {
// రూపాంతరం చెందిన విలువను తిరిగి ఇవ్వండి
});
ఉదాహరణ:
const numbers = [1, 2, 3, 4, 5];
const squaredNumbers = numbers.map(number => number * number);
console.log(squaredNumbers);
// అవుట్పుట్: [1, 4, 9, 16, 25]
వినియోగ సందర్భం: ప్రదర్శన కోసం డేటాను ఫార్మాట్ చేయడం, యూనిట్లను మార్చడం, సవరించిన విలువలతో కొత్త అర్రేను సృష్టించడం.
ప్రపంచవ్యాప్త ఉదాహరణ: మీ వద్ద USD లో కరెన్సీ విలువల అర్రే ఉందని ఊహించుకోండి, మరియు మీరు వాటిని EUR కు మార్చాలి. EUR విలువల కొత్త అర్రేను సృష్టించడానికి మీరు ఎక్స్ఛేంజ్ రేట్ APIతో map()
ను ఉపయోగించవచ్చు.
3. అర్రేలను ఫిల్టర్ చేయడం: filter()
filter()
మెథడ్ అందించిన ఫంక్షన్ ద్వారా అమలు చేయబడిన టెస్ట్లో పాస్ అయిన అన్ని ఎలిమెంట్స్తో ఒక కొత్త అర్రేను సృష్టిస్తుంది. ఇది ఒక కండిషన్ ఆధారంగా అర్రే నుండి నిర్దిష్ట ఎలిమెంట్స్ను ఎంచుకోవడానికి పరిపూర్ణమైనది.
సింటాక్స్:
const newArray = array.filter(function(currentValue, index, array) {
// ఎలిమెంట్ను ఉంచడానికి true, మినహాయించడానికి false తిరిగి ఇవ్వండి
});
ఉదాహరణ:
const numbers = [1, 2, 3, 4, 5, 6];
const evenNumbers = numbers.filter(number => number % 2 === 0);
console.log(evenNumbers);
// అవుట్పుట్: [2, 4, 6]
వినియోగ సందర్భం: అనవసరమైన డేటాను తొలగించడం, సెర్చ్ క్రైటీరియా ఆధారంగా ఐటమ్స్ను ఎంచుకోవడం, యూజర్ ప్రాధాన్యతల ఆధారంగా డేటాను ఫిల్టర్ చేయడం.
ప్రపంచవ్యాప్త ఉదాహరణ: వివిధ దేశాల నుండి యూజర్ ఆబ్జెక్ట్ల అర్రేను పరిగణించండి. "జపాన్" లేదా "బ్రెజిల్" వంటి నిర్దిష్ట దేశం నుండి యూజర్లను మాత్రమే కలిగి ఉన్న కొత్త అర్రేను సృష్టించడానికి మీరు filter()
ను ఉపయోగించవచ్చు.
4. అర్రేలను తగ్గించడం: reduce()
reduce()
మెథడ్ అర్రేలోని ప్రతి ఎలిమెంట్పై ఒక రిడ్యూసర్ ఫంక్షన్ను (మీరు అందించేది) ఎక్జిక్యూట్ చేస్తుంది, దీని ఫలితంగా ఒకే అవుట్పుట్ విలువ వస్తుంది. అర్రే డేటాపై లెక్కలు మరియు అగ్రిగేషన్స్ చేయడానికి ఇది చాలా శక్తివంతమైనది.
సింటాక్స్:
const result = array.reduce(function(accumulator, currentValue, currentIndex, array) {
// అప్డేట్ చేయబడిన అక్యుమ్యులేటర్ను తిరిగి ఇవ్వండి
}, initialValue);
ఉదాహరణ:
const numbers = [1, 2, 3, 4, 5];
const sum = numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0);
console.log(sum);
// అవుట్పుట్: 15
వినియోగ సందర్భం: మొత్తాలు, సగటులు లెక్కించడం, గరిష్ట లేదా కనిష్ట విలువలను కనుగొనడం, స్ట్రింగ్లను కలపడం.
ప్రపంచవ్యాప్త ఉదాహరణ: మీ వద్ద వివిధ ప్రాంతాల (ఉదా., ఉత్తర అమెరికా, యూరప్, ఆసియా) నుండి అమ్మకాల గణాంకాల అర్రే ఉందని అనుకుందాం. మొత్తం ప్రపంచవ్యాప్త అమ్మకాలను లెక్కించడానికి మీరు reduce()
ను ఉపయోగించవచ్చు.
5. అర్రేలను శోధించడం: find()
, findIndex()
, includes()
, indexOf()
, lastIndexOf()
జావాస్క్రిప్ట్ అర్రేలను శోధించడానికి అనేక మెథడ్స్ను అందిస్తుంది:
find()
: అందించిన టెస్టింగ్ ఫంక్షన్ను సంతృప్తిపరిచే అర్రేలోని మొదటి ఎలిమెంట్ యొక్క విలువను తిరిగి ఇస్తుంది. ఏ ఎలిమెంట్ సంతృప్తిపరచకపోతేundefined
తిరిగి ఇస్తుంది.findIndex()
: అందించిన టెస్టింగ్ ఫంక్షన్ను సంతృప్తిపరిచే అర్రేలోని మొదటి ఎలిమెంట్ యొక్క ఇండెక్స్ను తిరిగి ఇస్తుంది. ఏ ఎలిమెంట్ సంతృప్తిపరచకపోతే-1
తిరిగి ఇస్తుంది.includes()
: ఒక అర్రే దాని ఎంట్రీలలో ఒక నిర్దిష్ట విలువను కలిగి ఉందో లేదో నిర్ధారిస్తుంది,true
లేదాfalse
తిరిగి ఇస్తుంది.indexOf()
: అర్రేలో ఇవ్వబడిన ఎలిమెంట్ను కనుగొనగలిగే మొదటి ఇండెక్స్ను తిరిగి ఇస్తుంది, లేదా అది లేకపోతే-1
తిరిగి ఇస్తుంది.lastIndexOf()
: అర్రేలో ఇవ్వబడిన ఎలిమెంట్ను కనుగొనగలిగే చివరి ఇండెక్స్ను తిరిగి ఇస్తుంది, లేదా అది లేకపోతే-1
తిరిగి ఇస్తుంది.
ఉదాహరణలు:
const numbers = [1, 2, 3, 4, 5];
const foundNumber = numbers.find(number => number > 3);
console.log(foundNumber); // అవుట్పుట్: 4
const foundIndex = numbers.findIndex(number => number > 3);
console.log(foundIndex); // అవుట్పుట్: 3
const includesThree = numbers.includes(3);
console.log(includesThree); // అవుట్పుట్: true
const indexOfTwo = numbers.indexOf(2);
console.log(indexOfTwo); // అవుట్పుట్: 1
const lastIndexOfFour = [1, 2, 3, 4, 4, 5].lastIndexOf(4);
console.log(lastIndexOfFour); // అవుట్పుట్: 4
వినియోగ సందర్భాలు: ఒక జాబితాలో నిర్దిష్ట యూజర్ను కనుగొనడం, షాపింగ్ కార్ట్లో ఒక ఐటమ్ ఉందో లేదో తనిఖీ చేయడం, అర్రేలో ఒక ఎలిమెంట్ యొక్క స్థానాన్ని గుర్తించడం.
6. ఎలిమెంట్లను జోడించడం మరియు తొలగించడం: push()
, pop()
, shift()
, unshift()
, splice()
ఈ మెథడ్స్ ఎలిమెంట్లను జోడించడం లేదా తొలగించడం ద్వారా అసలు అర్రేను సవరిస్తాయి:
push()
: అర్రే యొక్క చివర ఒకటి లేదా అంతకంటే ఎక్కువ ఎలిమెంట్లను జోడిస్తుంది మరియు అర్రే యొక్క కొత్త పొడవును తిరిగి ఇస్తుంది.pop()
: అర్రే నుండి చివరి ఎలిమెంట్ను తొలగిస్తుంది మరియు ఆ ఎలిమెంట్ను తిరిగి ఇస్తుంది.shift()
: అర్రే నుండి మొదటి ఎలిమెంట్ను తొలగిస్తుంది మరియు ఆ ఎలిమెంట్ను తిరిగి ఇస్తుంది.unshift()
: అర్రే యొక్క ప్రారంభంలో ఒకటి లేదా అంతకంటే ఎక్కువ ఎలిమెంట్లను జోడిస్తుంది మరియు అర్రే యొక్క కొత్త పొడవును తిరిగి ఇస్తుంది.splice()
: ఉన్న ఎలిమెంట్లను తొలగించడం లేదా భర్తీ చేయడం మరియు/లేదా కొత్త ఎలిమెంట్లను జోడించడం ద్వారా అర్రే యొక్క కంటెంట్లను మారుస్తుంది.
ఉదాహరణలు:
const numbers = [1, 2, 3];
numbers.push(4, 5); // 4 మరియు 5ను చివర జోడిస్తుంది
console.log(numbers); // అవుట్పుట్: [1, 2, 3, 4, 5]
const lastElement = numbers.pop(); // చివరి ఎలిమెంట్ను (5) తొలగిస్తుంది
console.log(numbers); // అవుట్పుట్: [1, 2, 3, 4]
console.log(lastElement); // అవుట్పుట్: 5
const firstElement = numbers.shift(); // మొదటి ఎలిమెంట్ను (1) తొలగిస్తుంది
console.log(numbers); // అవుట్పుట్: [2, 3, 4]
console.log(firstElement); // అవుట్పుట్: 1
numbers.unshift(0); // 0ను ప్రారంభంలో జోడిస్తుంది
console.log(numbers); // అవుట్పుట్: [0, 2, 3, 4]
numbers.splice(1, 2, 10, 20); // ఇండెక్స్ 1 నుండి 2 ఎలిమెంట్లను తొలగించి, 10 మరియు 20ను చేర్చుతుంది
console.log(numbers); // అవుట్పుట్: [0, 10, 20, 4]
వినియోగ సందర్భాలు: ఒక క్యూను నిర్వహించడం, షాపింగ్ కార్ట్కు ఐటమ్స్ జోడించడం, టాస్క్ల జాబితాను అప్డేట్ చేయడం.
7. సబ్-అర్రేలను సృష్టించడం: slice()
slice()
మెథడ్ అర్రే యొక్క కొంత భాగాన్ని ఒక కొత్త అర్రే ఆబ్జెక్ట్లోకి షాలో కాపీగా తిరిగి ఇస్తుంది, ఇది start
నుండి end
(end
చేర్చబడదు) వరకు ఎంపిక చేయబడుతుంది, ఇక్కడ start
మరియు end
ఆ అర్రేలోని ఐటమ్స్ యొక్క ఇండెక్స్ను సూచిస్తాయి. అసలు అర్రే సవరించబడదు.
సింటాక్స్:
const newArray = array.slice(start, end);
ఉదాహరణ:
const numbers = [1, 2, 3, 4, 5];
const subarray = numbers.slice(1, 4);
console.log(subarray); // అవుట్పుట్: [2, 3, 4]
console.log(numbers); // అవుట్పుట్: [1, 2, 3, 4, 5] (అసలు అర్రే మారదు)
వినియోగ సందర్భం: ప్రాసెసింగ్ కోసం అర్రే యొక్క కొంత భాగాన్ని సంగ్రహించడం, అర్రే యొక్క కాపీని సృష్టించడం.
8. అర్రేలను సార్ట్ చేయడం: sort()
sort()
మెథడ్ అర్రే యొక్క ఎలిమెంట్లను అదే స్థానంలో సార్ట్ చేసి, సార్ట్ చేయబడిన అర్రేను తిరిగి ఇస్తుంది. డిఫాల్ట్ సార్ట్ ఆర్డర్ ఆరోహణ క్రమంలో ఉంటుంది, ఇది ఎలిమెంట్లను స్ట్రింగ్లుగా మార్చి, ఆపై వాటి UTF-16 కోడ్ యూనిట్ విలువల క్రమాన్ని పోల్చడంపై ఆధారపడి ఉంటుంది.
సింటాక్స్:
array.sort(compareFunction);
compareFunction
ఐచ్ఛికం. అది వదిలివేయబడితే, అర్రే ఎలిమెంట్లు స్ట్రింగ్లుగా మార్చబడి UTF-16 కోడ్ యూనిట్ విలువ ప్రకారం సార్ట్ చేయబడతాయి. మీరు సంఖ్యలను సంఖ్యాపరంగా సార్ట్ చేయాలనుకుంటే, మీరు ఒక కంపేర్ ఫంక్షన్ను అందించాలి.
ఉదాహరణలు:
const numbers = [3, 1, 4, 1, 5, 9, 2, 6];
numbers.sort(); // అక్షరక్రమంగా సార్ట్ చేస్తుంది (సంఖ్యలను స్ట్రింగ్లుగా పరిగణిస్తుంది)
console.log(numbers); // అవుట్పుట్: [1, 1, 2, 3, 4, 5, 6, 9]
numbers.sort((a, b) => a - b); // సంఖ్యాపరంగా సార్ట్ చేస్తుంది (ఆరోహణ)
console.log(numbers); // అవుట్పుట్: [1, 1, 2, 3, 4, 5, 6, 9]
numbers.sort((a, b) => b - a); // సంఖ్యాపరంగా సార్ట్ చేస్తుంది (అవరోహణ)
console.log(numbers); // అవుట్పుట్: [9, 6, 5, 4, 3, 2, 1, 1]
వినియోగ సందర్భం: ధరల వారీగా ఉత్పత్తుల జాబితాను సార్ట్ చేయడం, పేరు వారీగా యూజర్లను సార్ట్ చేయడం, ప్రాధాన్యత వారీగా టాస్క్లను ఆర్డర్ చేయడం.
9. అర్రే ఎలిమెంట్లను టెస్ట్ చేయడం: every()
, some()
ఈ మెథడ్స్ అర్రేలోని అన్ని లేదా కొన్ని ఎలిమెంట్లు ఒక కండిషన్ను సంతృప్తి పరుస్తాయో లేదో టెస్ట్ చేస్తాయి:
every()
: అర్రేలోని అన్ని ఎలిమెంట్లు అందించిన ఫంక్షన్ ద్వారా అమలు చేయబడిన టెస్ట్లో పాస్ అవుతాయో లేదో టెస్ట్ చేస్తుంది. ఇది ఒక బూలియన్ విలువను తిరిగి ఇస్తుంది.some()
: అర్రేలోని కనీసం ఒక ఎలిమెంట్ అందించిన ఫంక్షన్ ద్వారా అమలు చేయబడిన టెస్ట్లో పాస్ అవుతుందో లేదో టెస్ట్ చేస్తుంది. అర్రేలో, అందించిన ఫంక్షన్true
తిరిగి ఇచ్చే ఎలిమెంట్ను కనుగొంటే ఇదిtrue
తిరిగి ఇస్తుంది; లేకపోతేfalse
తిరిగి ఇస్తుంది. ఇది అర్రేను సవరించదు.
ఉదాహరణలు:
const numbers = [2, 4, 6, 8, 10];
const allEven = numbers.every(number => number % 2 === 0);
console.log(allEven); // అవుట్పుట్: true
const someOdd = numbers.some(number => number % 2 !== 0);
console.log(someOdd); // అవుట్పుట్: false
వినియోగ సందర్భం: ఫార్మ్ డేటాను ధృవీకరించడం, యూజర్లందరూ నిబంధనలు మరియు షరతులను అంగీకరించారో లేదో తనిఖీ చేయడం, షాపింగ్ కార్ట్లోని ఏవైనా ఐటమ్స్ స్టాక్లో లేవో నిర్ధారించడం.
10. అర్రే ఎలిమెంట్లను కలపడం: join()
join()
మెథడ్ అర్రేలోని (లేదా అర్రే లాంటి ఆబ్జెక్ట్లోని) అన్ని ఎలిమెంట్లను కామాలతో లేదా ఒక నిర్దిష్ట సెపరేటర్ స్ట్రింగ్తో వేరు చేసి, కలపడం ద్వారా ఒక కొత్త స్ట్రింగ్ను సృష్టించి తిరిగి ఇస్తుంది. అర్రేలో ఒకే ఐటమ్ ఉంటే, ఆ ఐటమ్ సెపరేటర్ను ఉపయోగించకుండా తిరిగి ఇవ్వబడుతుంది.
సింటాక్స్:
const newString = array.join(separator);
ఉదాహరణ:
const words = ["Hello", "World", "!"];
const sentence = words.join(" ");
console.log(sentence); // అవుట్పుట్: Hello World !
వినియోగ సందర్భం: కామాతో వేరు చేయబడిన విలువల జాబితాను సృష్టించడం, సెగ్మెంట్ల అర్రే నుండి URL పాత్ను రూపొందించడం.
ఉత్తమ పద్ధతులు
- తిరిగి వచ్చే విలువను అర్థం చేసుకోండి: ప్రతి మెథడ్ ఏమి తిరిగి ఇస్తుందో (కొత్త అర్రే, ఒకే విలువ, బూలియన్ మొదలైనవి) తెలుసుకోండి.
- ఇమ్మ్యూటబిలిటీ:
map()
,filter()
, మరియుslice()
వంటి మెథడ్స్ కొత్త అర్రేలను సృష్టిస్తాయి, అసలు డేటాను భద్రపరుస్తాయి. ఊహించని దుష్ప్రభావాలను నివారించడానికి సాధ్యమైనప్పుడు అసలు అర్రేను సవరించే మెథడ్స్ (push()
,pop()
,shift()
,unshift()
,splice()
,sort()
) కంటే వీటిని ఇష్టపడండి. - చైనింగ్: సంక్లిష్టమైన ఆపరేషన్లను సంక్షిప్తంగా మరియు చదవగలిగే విధంగా చేయడానికి బహుళ అర్రే మెథడ్స్ను కలపండి. ఉదాహరణకు:
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; const result = numbers .filter(number => number % 2 === 0) // సరి సంఖ్యలను ఫిల్టర్ చేయండి .map(number => number * 2); // 2తో గుణించండి console.log(result); // అవుట్పుట్: [4, 8, 12, 16, 20]
- పనితీరు: అర్రే మెథడ్స్ సాధారణంగా సమర్థవంతంగా ఉన్నప్పటికీ, చాలా పెద్ద అర్రేలతో పనిచేసేటప్పుడు పనితీరు ప్రభావాలను పరిగణించండి. కొన్ని సందర్భాల్లో, సాంప్రదాయ
for
లూప్ వేగంగా ఉండవచ్చు. - రీడబిలిటీ: మీ ఉద్దేశ్యాన్ని ఉత్తమంగా వ్యక్తపరిచే మెథడ్ను ఎంచుకోండి. ఉదాహరణకు, సాధారణ ఇటరేషన్ కోసం
forEach()
, రూపాంతరం కోసంmap()
, మరియు ఎంపిక కోసంfilter()
ఉపయోగించండి.
ముగింపు
ఏ వెబ్ డెవలపర్కైనా జావాస్క్రిప్ట్ అర్రే మెథడ్స్లో ప్రావీణ్యం పొందడం చాలా అవసరం. అవి డేటాను మానిప్యులేట్ చేయడానికి మరియు రూపాంతరం చేయడానికి శక్తివంతమైన మరియు సమర్థవంతమైన సాధనాలను అందిస్తాయి, ఇది శుభ్రమైన, చదవగలిగే, మరియు మరింత మెయింటెయిన్ చేయగల కోడ్కు దారితీస్తుంది. ఈ మెథడ్స్ను సమర్థవంతంగా అర్థం చేసుకోవడం మరియు వర్తింపజేయడం ద్వారా, మీరు మీ డెవలప్మెంట్ నైపుణ్యాలను గణనీయంగా మెరుగుపరుచుకోవచ్చు మరియు దృఢమైన అప్లికేషన్లను నిర్మించవచ్చు.
మీ అవగాహనను పటిష్టం చేసుకోవడానికి మరియు వాటి పూర్తి సామర్థ్యాన్ని అన్లాక్ చేయడానికి ఈ మెథడ్స్ను వివిధ సందర్భాలలో ఉపయోగించడం ప్రాక్టీస్ చేయండి. హ్యాపీ కోడింగ్!