JavaScript Multidimensional Arrays
JavaScript Multidimensional Arrays అంటే ఏమిటి?
ఒక array లో మరో array ని value గా ఉంచితే దాన్ని multidimensional array అంటారు. సాధారణంగా రెండు-dimensional array అనేది rows మరియు columns రూపంలో data ని store చేస్తుంది.
ఉదాహరణకు ఒక classroom లో students marks ని rows మరియు subjects ని columns గా ఉంచవచ్చు. JavaScript లో multidimensional array కోసం ప్రత్యేక syntax అవసరం లేదు. కేవలం arrays లోపల arrays ని ఉంచాలి.
Multidimensional Array సృష్టించడం
ఒక రెండు-dimensional array ఇలా ఉంటుంది: [[1, 2, 3], [4, 5, 6]]. ఇందులో రెండు inner arrays ఉన్నాయి. మొదటి inner array మొదటి row, రెండవ inner array రెండవ row గా భావించవచ్చు.
Values ను access చేయడం
మొదట row index, తరువాత column index ఉపయోగించాలి. JavaScript arrays లో index zero నుండి ప్రారంభమవుతుంది. కాబట్టి matrix[0][1] అంటే మొదటి row లోని రెండవ value.
Values ను update చేయడం
ఏదైనా value మార్చడానికి row index మరియు column index రెండింటినీ ఉపయోగించాలి. ఉదాహరణకు matrix[1][2] = 10 అంటే రెండవ row లోని మూడవ value ను 10 గా మార్చడం.
Nested loops తో data చదవడం
Multidimensional array లోని ప్రతి value ని చదవడానికి సాధారణంగా ఒక outer loop rows కోసం, ఒక inner loop columns కోసం ఉపయోగిస్తాం. Inner loop లో current row యొక్క length property ఉపయోగించడం మంచిది.
Jagged arrays
ప్రతి inner array లో values సంఖ్య ఒకేలా ఉండాల్సిన అవసరం లేదు. వేర్వేరు lengths ఉన్న inner arrays ను jagged array అంటారు. అయితే regular table data కోసం అన్ని rows లో columns సంఖ్య ఒకేలా ఉంచడం సులభం.
Simple Explanation
Multidimensional array ను ఒక table లా ఊహించండి. Outer array మొత్తం table. దానిలోని ప్రతి inner array ఒక row. ఒక value ను పొందడానికి రెండు indexes అవసరం: మొదట row index, తరువాత column index.
ఉదాహరణకు scores[1][0] అంటే రెండవ row లోని మొదటి score. అన్ని values పై పని చేయాలంటే nested for loops ఉపయోగించవచ్చు.
Real-Life Example
ఒక school లో మూడు students కు రెండు subjects marks ఉన్నాయని అనుకుందాం. ప్రతి student marks ను ఒక inner array గా ఉంచవచ్చు. Outer array లో అన్ని students marks ఉంటాయి. ఇలాంటి structure తో ప్రతి student total, class average లేదా subject-wise marks సులభంగా calculate చేయవచ్చు.
Code Examples
Multidimensional Array ను create చేసి values access చేయడం
const matrix = [
[1, 2, 3],
[4, 5, 6]
];
console.log(matrix[0][1]);
console.log(matrix[1][2]);
matrix లో రెండు inner arrays ఉన్నాయి. matrix[0][1] మొదటి row లోని రెండవ value ని access చేస్తుంది. matrix[1][2] రెండవ row లోని మూడవ value ని access చేస్తుంది.
2 6
Nested loops తో అన్ని values ను చదవడం
const marks = [
[80, 75],
[90, 85]
];
let total = 0;
for (let row = 0; row < marks.length; row++) {
for (let column = 0; column < marks[row].length; column++) {
total += marks[row][column];
}
}
console.log(total);
Outer loop ప్రతి row ని select చేస్తుంది. Inner loop ఆ row లోని ప్రతి column value పైకి వెళ్తుంది. ప్రతి mark ను total లో కలిపి చివరలో మొత్తం marks ను print చేస్తాం.
330
Multidimensional Array value ను update చేయడం
const seats = [
["A1", "A2"],
["B1", "B2"]
];
seats[1][0] = "Booked";
console.log(seats[1][0]);
seats[1][0] రెండవ row లోని మొదటి seat ని సూచిస్తుంది. Assignment ద్వారా ఆ value ని Booked గా update చేశాం.
Booked
Line-by-Line Explanation
marks అనే constant variable ను ప్రారంభించి multidimensional array కోసం opening bracket పెడుతున్నాం.
ఇది మొదటి row. ఇందులో 80 మరియు 75 అనే రెండు marks ఉన్నాయి.
ఇది రెండవ row. ఇందులో 90 మరియు 85 అనే marks ఉన్నాయి.
Outer array ని close చేసి statement ని ముగిస్తున్నాం.
ఈ ఖాళీ line code ను readable గా ఉంచడానికి మాత్రమే ఉపయోగించబడింది.
అన్ని marks మొత్తాన్ని store చేయడానికి total variable ను 0 తో ప్రారంభిస్తున్నాం.
ఈ ఖాళీ line code sections మధ్య చిన్న విరామాన్ని చూపిస్తుంది.
ఈ outer for loop ప్రతి row పైకి వెళ్తుంది. row index 0 నుండి ప్రారంభమై marks లోని rows సంఖ్య వరకు కొనసాగుతుంది.
ఈ inner loop ప్రస్తుత row లోని ప్రతి column పైకి వెళ్తుంది. ప్రతి row యొక్క length ను ఉపయోగించడం వల్ల row lengths వేర్వేరుగా ఉన్నా loop సరిగ్గా పనిచేస్తుంది.
ప్రస్తుత row మరియు column వద్ద ఉన్న mark ను total కి కలుపుతున్నాం. marks[row][column] రెండు indexes తో value ను access చేస్తుంది.
Inner loop block ఇక్కడ ముగుస్తుంది.
Outer loop block ఇక్కడ ముగుస్తుంది. అన్ని rows process అయిన తర్వాత execution ఈ loop తర్వాతి line కి వెళ్తుంది.
ఈ ఖాళీ line output statement కు ముందు code ను readable గా ఉంచుతుంది.
అన్ని marks కలిపిన తర్వాత total value ని console లో చూపిస్తుంది.
Try It
Try this JavaScript code:
const temperatures = [
[30, 32, 31],
[28, 29, 30]
];
let total = 0;
let count = 0;
// Use nested loops to calculate the total and average.
Practice
Practice:
temperatures అనే multidimensional array లోని అన్ని temperature values ను nested loops ఉపయోగించి add చేయండి. తరువాత total values count ను కనుగొని average ను console లో print చేయండి.
Hint:
Outer loop rows కోసం, inner loop columns కోసం ఉపయోగించండి. ప్రతి value ను total కి add చేసి, ప్రతి value వద్ద count ను one తో పెంచండి. Average కోసం total ను count తో divide చేయండి.
Common Mistakes
రెండవ index ఇవ్వకుండా matrix[1] తో ఒక single value వస్తుందని అనుకోవడం.
matrix[1] మొత్తం రెండవ row ను ఇస్తుంది. ఆ row లోని ఒక value కావాలంటే matrix[1][0] వంటి రెండు indexes ఉపయోగించాలి.
Outer loop లో ప్రతి row యొక్క length బదులుగా మొత్తం matrix యొక్క length ను inner loop condition గా ఉపయోగించడం.
Inner loop లో current row యొక్క length కోసం matrix[row].length ఉపయోగించండి. ఇది jagged arrays కు కూడా సరైనది.
Array index one నుండి ప్రారంభమవుతుందని అనుకోవడం.
JavaScript arrays zero-indexed. మొదటి row లేదా value index 0, రెండవది index 1.
Nested loops లో row మరియు column variables ను update చేయకుండా తప్పు loop condition రాయడం.
Outer loop row ను, inner loop column ను update చేయాలి. సాధారణ pattern గా row++ మరియు column++ ఉపయోగించండి.
Interview Questions
JavaScript లో multidimensional array అంటే ఏమిటి?
Answer:
ఒక array లో మరో array లేదా arrays ను values గా ఉంచిన structure ను multidimensional array అంటారు. ఇది సాధారణంగా table లాంటి rows మరియు columns data కోసం ఉపయోగించబడుతుంది.
matrix[2][1] ఏమి సూచిస్తుంది?
Answer:
ఇది మూడవ row లోని రెండవ value ను సూచిస్తుంది, ఎందుకంటే JavaScript indexing zero నుండి ప్రారంభమవుతుంది.
Multidimensional array ను traverse చేయడానికి nested loops ఎందుకు ఉపయోగిస్తారు?
Answer:
Outer loop ప్రతి row పైకి వెళ్లడానికి, inner loop ప్రతి row లోని columns పైకి వెళ్లడానికి ఉపయోగపడుతుంది. అందువల్ల array లోని ప్రతి value ని access చేయవచ్చు.
Jagged array అంటే ఏమిటి?
Answer:
Inner arrays లో values సంఖ్య ఒకేలా లేకపోతే దాన్ని jagged array అంటారు. ఉదాహరణకు ఒక row లో రెండు values, మరో row లో మూడు values ఉండవచ్చు.
Exam Questions
క్రింది array లో 50 value ను access చేయడానికి సరైన expression ఏది? const data = [[10, 20], [40, 50]];
Answer:
సరైన expression data[1][1]. ఇది రెండవ row లోని రెండవ value అయిన 50 ను access చేస్తుంది.
Multidimensional array లోని అన్ని values ను print చేయడానికి ఏ looping technique ఉపయోగిస్తారు?
Answer:
Nested for loops ఉపయోగిస్తారు. Outer loop rows కోసం, inner loop columns కోసం పనిచేస్తుంది.
ఒక multidimensional array లో రెండవ row లోని మొదటి value ను 100 గా మార్చే statement రాయండి.
Answer:
arrayName[1][0] = 100; అని రాయాలి. Index 1 రెండవ row ను, index 0 మొదటి column ను సూచిస్తుంది.
Quick Revision
- Multidimensional array అంటే arrays లోపల arrays ఉండే structure.
- JavaScript arrays zero-indexed; మొదటి index 0.
- ఒక value ను access చేయడానికి array[row][column] pattern ఉపయోగించండి.
- Rows మరియు columns అన్నింటినీ process చేయడానికి nested loops ఉపయోగించండి.
- Inner loop condition లో సాధారణంగా array[row].length ఉపయోగించండి.
- ప్రతి row length వేరుగా ఉంటే దాన్ని jagged array అంటారు.
- Value update చేయడానికి కూడా row index మరియు column index రెండూ అవసరం.
