* chore(i18n,curriculum): update translations * chore: Italian to italian Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
2.4 KiB
id, title, challengeType, videoUrl, forumTopicId, dashedName
id | title | challengeType | videoUrl | forumTopicId | dashedName |
---|---|---|---|---|---|
587d7b7e367417b2b2512b21 | Usare operatori condizionali multipli (ternari) | 1 | https://scrimba.com/c/cyWJBT4 | 301179 | use-multiple-conditional-ternary-operators |
--description--
Nella sfida precedente, hai usato un singolo operatore condizionale. Puoi anche concatenarli insieme per verificare la presenza di più condizioni.
La seguente funzione utilizza le istruzioni if
, else if
e else
per verificare più condizioni:
function findGreaterOrEqual(a, b) {
if (a === b) {
return "a and b are equal";
}
else if (a > b) {
return "a is greater";
}
else {
return "b is greater";
}
}
La funzione di cui sopra può essere riscritta utilizzando più operatori condizionali:
function findGreaterOrEqual(a, b) {
return (a === b) ? "a and b are equal"
: (a > b) ? "a is greater"
: "b is greater";
}
È ritenuta una buona pratica formattare più operatori condizionali in modo tale che ogni condizione si trovi su una linea separata, come mostrato sopra. Utilizzare più operatori condizionali senza indentazione corretta può rendere il codice difficile da leggere. Ad esempio:
function findGreaterOrEqual(a, b) {
return (a === b) ? "a and b are equal" : (a > b) ? "a is greater" : "b is greater";
}
--instructions--
Nella funzione checkSign
utilizza più operatori condizionali - seguendo il formato raccomandato utilizzato in findGreaterOrEqual
- per verificare se un numero è positivo, negativo o zero. La funzione dovrebbe restituire positive
, negative
o zero
.
--hints--
checkSign
dovrebbe utilizzare più operatori condizionali
assert(/.+?\s*?\?\s*?.+?\s*?:\s*?.+?\s*?\?\s*?.+?\s*?:\s*?.+?/gi.test(code));
checkSign(10)
dovrebbe restituire la stringa positive
. Nota che la capitalizzazione conta
assert(checkSign(10) === 'positive');
checkSign(-12)
dovrebbe restituire la stringa negative
. Nota che la capitalizzazione conta
assert(checkSign(-12) === 'negative');
checkSign(0)
dovrebbe restituire la stringa zero
. Nota che la capitalizzazione conta
assert(checkSign(0) === 'zero');
--seed--
--seed-contents--
function checkSign(num) {
}
checkSign(10);
--solutions--
function checkSign(num) {
return (num > 0) ? 'positive' : (num < 0) ? 'negative' : 'zero';
}