Groeperende hakies in JavaScript
As jy wil, kan jy die prioriteit van bewerkings aandui deur ronde hakies te gebruik. Laat ons bv. ons kode so verander dat die optelling eers uitgevoer word, en dan die vermenigvuldiging:
let a = 2 * (2 + 3);
alert(a); // sal 10 vertoon (resultaat 2 * 5)
Nota: daar kan enige aantal hakies wees, selfs hakies wat binne mekaar genestel is:
let a = 2 * (2 + 4 * (3 + 1));
alert(a);
Bewerkings wat prioriteit het, kan tussen hakies geplaas word - dit sal nie 'n fout wees nie. Bv., laat ons die produk van getalle tussen hakies plaas:
let a = (2 * 2) + 3;
alert(a); // sal 7 vertoon (resultaat 4 + 3)
In hierdie geval is die hakies oorbodig (vermenigvuldiging het immers reeds prioriteit), maar die kode is toelaatbaar.
Soms word sulke groepering gebruik in situasies waar die prioriteit van bewerkings nie voor die hand liggend is nie. As voorbeeld, beskou die volgende kode:
let a = 8 / 2 * 4;
alert(a);
Soos jy reeds weet, sal deling eers uitgevoer word, en dan vermenigvuldiging. Maar op die eerste oogopslag is dit dalk nie duidelijk nie.
Groeperende hakies kan gebruik word om die prioriteit eksplisiet aan te dui:
let a = (8 / 2) * 4;
alert(a);
Sonder om die kode uit te voer, bepaal wat op die skerm vertoon sal word:
let a = (2 + 3) * (2 + 3);
alert(a);
Sonder om die kode uit te voer, bepaal wat op die skerm vertoon sal word:
let a = (2 + 3) * 2 + 3;
alert(a);
Sonder om die kode uit te voer, bepaal wat op die skerm vertoon sal word:
let a = 2 * (2 + 4 * (3 + 1));
alert(a);
Sonder om die kode uit te voer, bepaal wat op die skerm vertoon sal word:
let a = 2 * 8 / 4;
alert(a);
Sonder om die kode uit te voer, bepaal wat op die skerm vertoon sal word:
let a = (2 * 8) / 4;
alert(a);
Sonder om die kode uit te voer, bepaal wat op die skerm vertoon sal word:
let a = 2 * (8 / 4);
alert(a);