JavaScript if else తెలుగులో | if, else if, else Statements
ట్రాఫిక్ సిగ్నల్ దగ్గర మీరు ఏం చేస్తారు? ఎరుపు లైట్ అయితే ఆగుతారు, పసుపు అయితే నెమ్మదిస్తారు, ఆకుపచ్చ అయితే వెళ్తారు. పరిస్థితిని బట్టి నిర్ణయం తీసుకోవడమే మనం రోజూ చేసే పని. "వర్షం పడుతుంటే గొడుగు తీసుకెళ్తా, లేకపోతే తీసుకెళ్ళను" అనడం కూడా ఒక నిర్ణయమే.
ఇప్పటివరకు మన programs పై నుంచి కిందికి, ఒక్కో లైన్ గా run అయ్యాయి. కానీ నిజమైన programs లో పరిస్థితిని బట్టి వేర్వేరు పనులు చేయాలి. ఉదాహరణకు, వయసు 18 దాటితేనే ఓటు వేయడానికి అనుమతించాలి. మార్కులు 35 కంటే ఎక్కువ ఉంటేనే "Pass" అనాలి. ఇలాంటి నిర్ణయాల కోసం JavaScript లో if, else if, else వాడతాం.
if,if-elseమరియుelse ifladder రాయడం- Nested if (if లోపల if)
- Conditions లో comparison మరియు logical operators (
&&,||,!) వాడటం - Condition లో truthy/falsy విలువలు
- సాధారణంగా వచ్చే తప్పులు మరియు వాటిని నివారించడం
Condition (షరతు) true అయితేనే { } లోపల ఉన్న code run అవుతుంది. false అయితే ఆ భాగాన్ని వదిలేసి ముందుకు వెళ్తుంది.
Syntax:
if (condition) {
// condition true అయితే ఈ code run అవుతుంది
}
ఉదాహరణ: ఓటు వేయడానికి అర్హత
const age = 20;
if (age >= 18) {
console.log("మీరు ఓటు వేయొచ్చు");
}
మీరు ఓటు వేయొచ్చు
Code అర్థం చేసుకుందాం:
ifఅనేది keyword. "ఒకవేళ" అని అర్థం.- కుండలీకరణాల
( )లోపల condition ఉంటుంది. ఇది ఎప్పుడూtrueలేదాfalseఫలితం ఇచ్చే expression (Chapter 5 లోని comparison operators గుర్తుందా?). age >= 18నిజం కాబట్టి (20, 18 కంటే ఎక్కువ),{ }లోని code run అయ్యింది.age = 15అయితే condition false అవుతుంది, అప్పుడు ఏమీ print అవ్వదు.
కొన్నిసార్లు condition false అయినప్పుడు కూడా ఏదైనా చేయాలి. అప్పుడు else వాడతాం. "ఇది కాకపోతే, అది చెయ్యి" అని అర్థం.
const marks = 30;
if (marks >= 35) {
console.log("Pass");
} else {
console.log("Fail");
}
Fail
marks >= 35 false (30, 35 కంటే తక్కువ) కాబట్టి else భాగం run అయ్యింది.
if-else లో ఎల్లప్పుడూ రెండింట్లో ఒకటి మాత్రమే run అవుతుంది. రెండూ ఒకేసారి run అవ్వవు, రెండూ skip అవ్వవు.
రెండు కంటే ఎక్కువ అవకాశాలు ఉన్నప్పుడు else if వాడతాం. మార్కుల ఆధారంగా Grade ఇవ్వడం దీనికి మంచి ఉదాహరణ.
const marks = 72;
if (marks >= 80) {
console.log("Grade A");
} else if (marks >= 60) {
console.log("Grade B");
} else if (marks >= 35) {
console.log("Grade C");
} else {
console.log("Fail");
}
Grade B
ఇది ఎలా పని చేస్తుంది?
JavaScript conditions ని పై నుంచి కిందికి ఒక్కొక్కటిగా చెక్ చేస్తుంది:
marks >= 80→72 >= 80false, కాబట్టి దాటేసింది.marks >= 60→72 >= 60true! కాబట్టి "Grade B" print చేసింది.- ఇక్కడే ఆగిపోతుంది. మిగతా
else ifలు,elseని అసలు చూడదు.
అంటే, మొదట true అయిన condition యొక్క code మాత్రమే run అవుతుంది. ఇది ఒక మెట్ల (ladder) లాంటిది, కింది నుంచి కాదు, పై నుంచి దిగుతుంది.
JavaScript లో elseif అనే ఒకే పదం లేదు. else if అని మధ్యలో space తో రాయాలి. నిజానికి else if అంటే else లోపల ఇంకో if పెట్టడమే. కానీ దాన్ని ఒకే వరుసలో రాయడం సులభం కాబట్టి ఇలా రాస్తాం.
ఉదాహరణ: మూడు సంఖ్యల్లో పెద్దది
const a = 15;
const b = 42;
const c = 30;
if (a >= b && a >= c) {
console.log(a, "అతి పెద్దది");
} else if (b >= a && b >= c) {
console.log(b, "అతి పెద్దది");
} else {
console.log(c, "అతి పెద్దది");
}
42 అతి పెద్దది
ఇక్కడ && (AND) వాడి, ఒకే condition లో రెండు షరతులు కలిపాం. b >= a && b >= c అంటే "b, a కంటే పెద్దది మరియు c కంటే కూడా పెద్దది".
Chapter 5 లో నేర్చుకున్న &&, ||, ! ని conditions లో విరివిగా వాడతాం:
1. && (AND): రెండూ నిజం కావాలి
const username = "admin";
const password = "1234";
if (username === "admin" && password === "1234") {
console.log("Login successful");
} else {
console.log("Wrong details");
}
Login successful
Username మరియు password రెండూ సరిగ్గా ఉంటేనే login అవుతుంది. ఏ ఒక్కటి తప్పయినా else run అవుతుంది.
2. || (OR): ఏదైనా ఒకటి నిజమైతే చాలు
const day = "Sunday";
if (day === "Saturday" || day === "Sunday") {
console.log("ఈ రోజు సెలవు");
} else {
console.log("ఈ రోజు పని దినం");
}
ఈ రోజు సెలవు
3. ! (NOT): వ్యతిరేకం
const isLoggedIn = false;
if (!isLoggedIn) {
console.log("దయచేసి login అవ్వండి");
}
దయచేసి login అవ్వండి
isLoggedIn false, దాన్ని ! తిప్పి true చేసింది, అందుకే message వచ్చింది.
ఒక షరతు నిజమైన తర్వాత, ఇంకో షరతు చెక్ చేయాల్సి వస్తే, if లోపల if రాస్తాం. సినిమా హాల్ లో ముందు వయసు చూస్తారు, ఆ తర్వాత టికెట్ చూస్తారు. అదే nested if:
const age = 25;
const hasTicket = true;
if (age >= 18) {
if (hasTicket) {
console.log("లోపలికి రావచ్చు");
} else {
console.log("ముందు ticket కొనండి");
}
} else {
console.log("18 ఏళ్లు నిండాలి");
}
లోపలికి రావచ్చు
Code అర్థం చేసుకుందాం:
- మొదట
age >= 18చెక్ అయ్యింది. 25 కాబట్టి true, లోపలికి వెళ్ళింది. - లోపల
hasTicketచెక్ అయ్యింది. అదిtrueకాబట్టి "లోపలికి రావచ్చు" print అయ్యింది. hasTicketfalse అయి ఉంటే "ముందు ticket కొనండి" వచ్చేది.age18 కంటే తక్కువ అయి ఉంటే, బయటిelserun అయ్యి "18 ఏళ్లు నిండాలి" వచ్చేది.
Nested if ఎక్కువైతే code గందరగోళంగా మారుతుంది. రెండు షరతులను && తో కలిపి రాయొచ్చు: if (age >= 18 && hasTicket). కానీ రెండు షరతులకు వేర్వేరు message లు కావాలంటే, పైన చూపిన nested పద్ధతే సరైనది.
Condition ఎప్పుడూ true / false గా ఉండాల్సిన అవసరం లేదు. Chapter 6 లో నేర్చుకున్న truthy / falsy నియమం ఇక్కడ కూడా వర్తిస్తుంది. JavaScript ఏ విలువనైనా boolean గా మార్చి చూస్తుంది.
const userName = "";
if (userName) {
console.log(`నమస్కారం ${userName}`);
} else {
console.log("పేరు ఖాళీగా ఉంది");
}
పేరు ఖాళీగా ఉంది
ఖాళీ string "" falsy, కాబట్టి else run అయ్యింది. userName = "రవి" అయి ఉంటే "నమస్కారం రవి" వచ్చేది. Form లో user ఏదైనా టైప్ చేశాడా లేదా అని చెక్ చేయడానికి ఈ పద్ధతి చాలా సాధారణం.
(గుర్తుందా? 6 falsy విలువలు: false, 0, "", null, undefined, NaN. మిగతావన్నీ truthy.)
| సందర్భం | వాడాల్సినది |
|---|---|
| ఒక షరతు, ఒకే పని | if |
| రెండు దారులలో ఒకటి | if-else (చిన్నదైతే ternary ? :) |
| ఎక్కువ దారులు, ఒక్కటి మాత్రమే run కావాలి | else if ladder |
| ఒకే విలువను చాలా options తో పోల్చడం | switch (తర్వాతి chapter) |
ఉదాహరణ: సినిమా టికెట్ ధర
వయసును బట్టి టికెట్ ధర:
- 5 ఏళ్ల కంటే తక్కువ: ఉచితం
- 5 నుంచి 17 వరకు: ₹50
- 18 మరియు అంతకంటే ఎక్కువ: ₹100
const age = 10;
if (age < 5) {
console.log("ఉచితం");
} else if (age < 18) {
console.log("టికెట్ ధర: ₹50");
} else {
console.log("టికెట్ ధర: ₹100");
}
టికెట్ ధర: ₹50
age = 10: మొదటి condition (10 < 5) false, రెండోది (10 < 18) true, కాబట్టి ₹50.
గమనించండి: రెండో condition లో "5 కంటే ఎక్కువ" అని మళ్ళీ రాయలేదు. ఎందుకంటే ladder లో అప్పటికే age < 5 false అయ్యాక మాత్రమే అక్కడికి వస్తాం.
-
1.
if (...)తర్వాత semicolon పెట్టడం:
తప్పు!const age = 10; if (age >= 18); { console.log("Adult"); // తప్పు! age = 10 అయినా ఇది run అవుతుంది! }if (...)తర్వాత;పెట్టడంతో, if కి "ఖాళీ పని" ఇచ్చినట్లయింది. తర్వాత ఉన్న{ }అనేది if కి సంబంధం లేని ఒక వేరే block.if (...)తర్వాత ఎప్పుడూ semicolon పెట్టకండి. -
2. Braces
{ }మర్చిపోవడం:
Braces లేకపోతే, if కి కేవలం మొదటి లైన్ మాత్రమే చెందుతుంది. రెండో లైన్ if లో భాగం కాదు. బంగారు నియమం: ఒక్క లైన్ ఉన్నా, ఎప్పుడూ bracesconst age = 10; if (age >= 18) console.log("A"); console.log("B"); // Output: "B" ఎప్పుడూ print అవుతుంది!{ }వాడండి. -
3. Conditions క్రమం తప్పుగా పెట్టడం:
ఎక్కువ విలువ ఉన్న లేదా ప్రత్యేకమైన conditions ని ladder లో ముందు రాయండి.const marks = 90; if (marks >= 35) { console.log("Grade C"); // 90 మార్కులకు కూడా Grade C వచ్చేస్తుంది! } else if (marks >= 80) { console.log("Grade A"); } -
4.
===బదులు=వాడటం:
పోల్చడానికి ఎప్పుడూlet x = 10; if (x = 5) { // ❌ assignment జరుగుతుంది, 5 truthy కాబట్టి ఎప్పుడూ true! console.log("run అవుతుంది"); }===వాడండి. -
5.
else ifబదులు వేర్వేరుifలు రాయడం: రెండు వేర్వేరుifలు రాస్తే రెండూ run అవుతాయి. "ఒక్కటి మాత్రమే" కావాలంటేelse ifవాడాలి. -
6. పెద్ద, చిన్న అక్షరాల తేడా:
"Hyderabad" === "hyderabad"అనేదిfalse. JavaScript లో case sensitivity ఉంటుంది. -
7. Braces లేకుండా nested if రాసి "dangling else" గందరగోళం:
Braces లేకపోతే
elseదగ్గరగా ఉన్న లోపలిifకి చెందుతుంది. అందుకే ఎప్పుడూ braces{ }వాడాలి.
- ఒక సంఖ్య positive, negative లేదా zero అని చెప్పే program రాయండి. (సంఖ్య
-7) - వయసు ఆధారంగా టికెట్ ధర: 5 కంటే తక్కువ ఉచితం, 18 కంటే తక్కువ ₹50, లేకపోతే ₹100. వయసు
10అయితే ఏమొస్తుంది? username"admin" మరియుpassword"1234" అయితే "Login successful", లేకపోతే "Wrong details" print చేయండి.- ఒక సంఖ్య సరి (even) లేదా బేసి (odd) అని if-else తో చెప్పండి. (సంఖ్య
7) - మూడు సంఖ్యల్లో చిన్నది కనుక్కునే program రాయండి. (
a = 15,b = 42,c = 30) - ఒక సంవత్సరం leap year అవునా కాదా if-else తో చెప్పండి. (
2024తో test చేయండి.)
👉 సమాధానాలు చూడండి
1.
const num = -7;
if (num > 0) {
console.log("Positive");
} else if (num < 0) {
console.log("Negative");
} else {
console.log("Zero");
}
Output: Negative
2.
const age = 10;
if (age < 5) {
console.log("ఉచితం");
} else if (age < 18) {
console.log("₹50");
} else {
console.log("₹100");
}
Output: ₹50
3.
const username = "admin";
const password = "1234";
if (username === "admin" && password === "1234") {
console.log("Login successful");
} else {
console.log("Wrong details");
}
Output: Login successful
4.
const num = 7;
if (num % 2 === 0) {
console.log("సరి");
} else {
console.log("బేసి");
}
Output: బేసి
5.
const a = 15;
const b = 42;
const c = 30;
if (a <= b && a <= c) {
console.log(a, "అతి చిన్నది");
} else if (b <= a && b <= c) {
console.log(b, "అతి చిన్నది");
} else {
console.log(c, "అతి చిన్నది");
}
Output: 15 అతి చిన్నది
6.
const year = 2024;
if ((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0) {
console.log(year, "leap year");
} else {
console.log(year, "leap year కాదు");
}
Output: 2024 leap year
ఈ code ని మన compiler లో run చేసి, temperature విలువ మార్చి ఫలితం ఎలా మారుతుందో చూడండి:
const temperature = 38;
if (temperature >= 40) {
console.log("చాలా వేడి, బయటకు వెళ్ళకండి");
} else if (temperature >= 30) {
console.log("వేడిగా ఉంది, నీళ్లు తాగండి");
} else if (temperature >= 20) {
console.log("వాతావరణం బాగుంది");
} else {
console.log("చల్లగా ఉంది, స్వెటర్ వేసుకోండి");
}
వేడిగా ఉంది, నీళ్లు తాగండి
📌 సారాంశం (Quick Summary):
if: condition true అయితే{ }లోని code run అవుతుంది.else: condition false అయినప్పుడు run అవుతుంది. if-else లో ఎప్పుడూ ఒకటి మాత్రమే run అవుతుంది.else if: ఎక్కువ దారుల కోసం. పై నుంచి కిందికి చెక్ చేసి, మొదట true అయిన దాని code మాత్రమే run చేసి ఆగిపోతుంది.- JavaScript లో
elseifఅనే ఒకే పదం లేదు,else ifఅని space తో రాయాలి. - Conditions లో
&&,||,!మరియు truthy/falsy విలువలు వాడొచ్చు. - Nested if ఎక్కువైతే
&&తో conditions కలపండి. - తప్పులు నివారించడానికి:
if (...)తర్వాత;పెట్టకండి, ఎప్పుడూ braces{ }వాడండి,===వాడండి (=కాదు), పెద్ద conditions ని ముందు రాయండి.