Die probleem van die opsionele aard van krulhakies in if-else
Ondanks die feit dat JavaScript die bogenoemde afkortings met krulhakies toelaat, beveel ek oor die algemeen nie aan om dit te doen nie, aangesien dit 'n broeinestel is vir moeilik-opspoorbare foute. Kom ons sê byvoorbeeld daar is die volgende kode:
let toets = 3;
if (toets > 0)
console.log(toets);
Kom ons sê nou ons het besluit om, as die
voorwaarde waaraan voldoen word, ook 'n tweede
boodskap met die teks '+++' uit te voer:
let toets = 3;
if (toets > 0)
console.log(toets);
console.log('+++');
Maar, sonder krulhakies is slegs die eerste boodskap binne die voorwaarde. Dit beteken die eerste reël sal uitgevoer word wanneer die voorwaarde waar is, en die tweede - altyd.
In werklikheid is ons kode gelykstaande aan die volgende:
let toets = 3;
if (toets > 0) {
console.log(toets);
}
console.log('+++'); // hierdie reël het buite die voorwaarde beland
En wat ons sou wou hê, is hierdie kode:
let toets = 3;
if (toets > 0) {
console.log(toets);
console.log('+++'); // hierdie reël is binne die voorwaarde
}
Presies daarom word dit aanbeveel om altyd die krulhakies te plaas, om nie in hierdie soort foute te trap nie.