Jesteś tutaj: webmade.org >> porady >> javascript
autor: Patryk 'yarpo' Jar, ostatnia modyfikacja: 2007-05-05
Na pewno nie raz spotkałeś się – ba pewnie nawet używałeś – instrukcji warunkowej if. Jeśli nie, to polecam lekturę Instrukcje warunkowe. Co prawda jest to kurs PHP, jednak konstrukcja instrukcji warunkowej if w większości języków jest taka sama. W przypadku PHP i JS jest identyczna.
Normalny if wygląda tak:
if (warunek) { // wykonaj } else { // wykonaj co innego }
Jeśli to, co ma zostać wykonane ma jedynie jedną linię kodu, np:
if (i>0) { i--; } else { i++; }
Można to zapisać krócej:
if (i>0) i--; else i++;
Jeśli opuścimy klamry, to zostanie wykonany kod do pierwszego średnika, jako kod warunkowy. Reszta zostanie wykonana liniowo. Czyli jeśli masz:
if (i>0) { i--; inna_zmienna = 4; } else { i++; inna_zmienna = 7; }
I opuścisz klamry, to w przypadku, gdy i> 0 zostanie wykonane:
Tak więc pamiętaj, aby odpowiednio unikać klamer.
Jednak nie o tym miała być ta porada :) Miałem zamiar pokazać, rzeczywistą możliwość skrócenia kodu, oto i ona:
(i>0) ? i-- : i++;
Jest równoznaczne pierwszemu listingowi. W takim zapisie nie można używać więcej niż jednej instrukcji. Czyli nie można napisać i--; inna_zmienna=4;
Więc po co to?
Bardzo ułatwia to życie, i kod, kiedy masz krótką funkcję, np. min:
function min(a, b) { if (a>=b) { return b; } else { return a; } }
Jaka ta funkcja dluuuuga! Fuj! A można ładnie i szybko:
function min(a, b) { return (a>=b) ? b : a; }
Przekonałem, czy jeszcze nie? To może coś takiego:
a = (user=="Kasia") ? "Witaj Kasiu" : "Nie znam Cię!"; alert(a);
lub nawet krótsze:
alert((user=="Kasia") ? "Witaj Kasiu" : "Nie znam Cię!");
Jest wiele możliwości wykorzystania tego skrótu. Polecam po eksperymentować :)
Patryk 'yarpo' Jar
szukaj: if skrócony if JS JavaScript
Osoby czytające tę publikację przeglądały również:
© 2004-2008 copyright by webmade.org