joskus on tehtävä erilaisia toimia eri olosuhteiden perusteella.
Voit tehdä sen, voimme käyttää if
julkilausuma ja ehdollinen operaattori ?
, joka on myös kutsutaan ”kysymysmerkki” – operaattori.
”jos” lausunto
if(...)
selvitys arvioi ehto suluissa ja, jos tulos on true
, suorittaa lohkon koodi.,
esimerkiksi:
let year = prompt('In which year was ECMAScript-2015 specification published?', '');if (year == 2015) alert( 'You are right!' );
yllä olevassa esimerkissä ehto on yksinkertainen tasa-tarkastus (year == 2015
), mutta se voi olla paljon monimutkaisempi.,
Jos haluamme suorittaa useampi kuin yksi ilmoitus, meidän täytyy kääri meidän koodilohkon sisällä aaltosulkeita:
if (year == 2015) { alert( "That's correct!" ); alert( "You're so smart!" );}
suosittelemme, kääre koodi lohko kihara henkselit {}
joka kerta, kun käytät if
lausunto, vaikka siellä on vain yksi lausunto toteuttaa. Näin parannetaan luettavuutta.
Boolean muuntaminen
if (…)
selvitys arvioi ilmaisua sen suluissa ja muuntaa tuloksen boolean.,
katsotaanpa muistaa muuntaminen sääntöjen luvusta Tyyppi Tuloksia:
- useita
0
, tyhjä merkkijono""
,null
,undefined
, jaNaN
tullutfalse
. Siksi niitä kutsutaan ”falsyiksi” arvoiksi. - muista arvoista tulee
true
, joten niitä kutsutaan nimellä ”truthy”.,
Niin, koodi alla tämä ehto olisi koskaan suorittaa:
if (0) { // 0 is falsy ...}
…ja sisällä tämä ehto – se tulee aina:
if (1) { // 1 is truthy ...}
Voimme myös siirtää ennalta arvioida totuusarvon if
, kuten tämä:
let cond = (year == 2015); // equality evaluates to true or falseif (cond) { ...}
On ”muu” – lauseke
if
lausunto voi sisältää valinnaisen ”muu” block. Se toimii, kun kunto on heikko.,
esimerkiksi:
Useita ehtoja: ”else if”
Joskus, haluaisimme testata useita muunnelmia edellytys. else if
lauseke antaa meidän tehdä sen.
esimerkiksi:
yllä oleva koodi, JavaScript tarkistaa ensin year < 2015
. Jos se on falsy, se menee seuraava ehto year > 2015
. Jos sekin on falsy, se näyttää viimeisen alert
.
else if
lohkoja voi olla enemmän. Lopullinen else
on valinnainen.
ehdollinen toimija”?,’
Joskus, meidän täytyy määrittää muuttujan riippuen kunnossa.
esimerkiksi:
niin sanottu ”ehdollinen” tai ”kysymysmerkki”-operaattori antaa meidän tehdä sen lyhyemmällä ja yksinkertaisemmalla tavalla.
operaattorin edustaa kysymysmerkki ?
. Joskus sitä kutsutaan ”ternaryksi”, koska operaattorilla on kolme operandia. Se on itse asiassa yksi ja ainoa operaattori JavaScript joka on niin monta.,
syntaksi on:
let result = condition ? value1 : value2;
condition
arvioidaan: jos se on truthy sitten value1
palautetaan, muuten – value2
.
esimerkiksi:
let accessAllowed = (age > 18) ? true : false;
Teknisesti, voimme jättää sulut ympärillä age > 18
. Kysymysmerkin operaattorilla on alhainen ennakkotapaus, joten se suorittaa vertailun jälkeen >
.,
Tämä esimerkki tekee saman kuin edellinen:
mutta sulkeet tekevät koodista luettavamman, joten suosittelemme käyttämään niitä.
yllä olevassa esimerkissä, voit välttää käyttää kysymysmerkki-operaattori, koska vertailu itse palaa true/false
:
// the samelet accessAllowed = age > 18;
Useita ’?’
sarjan kysymysmerkki toimijat ?
voi palauttaa arvon, joka riippuu enemmän kuin yhden ehdon.,
esimerkiksi:
let age = prompt('age?', 18);let message = (age < 3) ? 'Hi, baby!' : (age < 18) ? 'Hello!' : (age < 100) ? 'Greetings!' : 'What an unusual age!';alert( message );
Se voi olla vaikeaa aluksi ymmärtää, mitä on tekeillä. Mutta kun tarkemmin, voimme nähdä, että se on vain tavallinen testien järjestys:
Tässä on, miten tämä näyttää käyttäen if..else
:
if (age < 3) { message = 'Hi, baby!';} else if (age < 18) { message = 'Hello!';} else if (age < 100) { message = 'Greetings!';} else { message = 'What an unusual age!';}
Ei-perinteinen käyttö ’?,’
Joskus kysymysmerkki ?
käytetään korvaamaan if
:
let company = prompt('Which company created JavaScript?', '');(company == 'Netscape') ? alert('Right!') : alert('Wrong.');
Riippuen kunnossa company == 'Netscape'
, joko ensimmäisen tai toisen ilmaisun jälkeen ?
teloitetaan ja osoittaa hälytyksen.
emme määritä tulosta muuttujalle täällä. Sen sijaan suoritamme eri koodin ehdosta riippuen.
ei ole suositeltavaa käyttää kysymysmerkin operaattoria tällä tavalla.,
merkintä on lyhyempi kuin vastaava if
ilmoitus, joka vetoaa jotkut ohjelmoijat. Mutta se on vähemmän luettavissa.
Tässä on sama koodi käyttäen if
vertailun vuoksi:
let company = prompt('Which company created JavaScript?', '');if (company == 'Netscape') { alert('Right!');} else { alert('Wrong.');}
silmät scan koodi pystysuunnassa. Useita viivoja kattavat koodilohkot on helpompi ymmärtää kuin pitkä, vaakasuora ohjejoukko.,
tarkoitus kysymysmerkki operaattori ?
on palauttaa yhden arvon tai toiseen, riippuen sen kunto. Käytä sitä juuri siihen. Käyttää if
kun sinun täytyy suorittaa eri alojen koodi.
Leave a Reply