Typescript Ternary Operator Short Form
I am inside a for loop trying to add up a number. The code is working fine, but I was asking myself if there might be shorter form for the following line: price = ve.select ? price
Solution 1:
You have several options:
An
ifstatementif (ve.select) { price += ve.price; }Or if you prefer it on one line:
if (ve.select) price += ve.price;The conditional operator version you've shown:
price = ve.select ? price + ve.price : price;...but note that it does an unnecessary assignment when
ve.selectis falsy (though aspriceis presumably a simple variable that's not an issue; with an object property that might be an accessor property it can matter).Using the
&&(logical AND) operator:ve.select && price += ve.price;But note that this is really just an
ifstatement in disguise.Tamás Sallai's answer providing an alternative use of the conditional operator (
price += ve.select ? ve.price : 0;).
Solution 2:
I'd reverse the ternary and use +=:
price += ve.select ? ve.price : 0;
Post a Comment for "Typescript Ternary Operator Short Form"