Hi
The TypeScript error checker seems to trip up on boolean arithmetic when the booleans are implicitly coerced into being numbers: eg
if (true + true + false) ...
This construction is okay with the JavaScript error checker and it is often used to see whether more than one value is true: eg
var isAngry:boolean = true;
var isSad:boolean = true;
var isHappy:boolean = false;
if (isAngry + isSad + isHappy > 1) console.log("You are confusing me!");
The IntelliSense error is "Invalid '+' expression - types not known to support the addition operator".
It is of course possible to get around this with explicit type conversion, but it would be nice to have implicit coercion working:
if (Number(isAngry) + Number(isSad) + Number(isHappy) > 1) console.log("You are still confusing me!");
Many thanks
Todd
The TypeScript error checker seems to trip up on boolean arithmetic when the booleans are implicitly coerced into being numbers: eg
if (true + true + false) ...
This construction is okay with the JavaScript error checker and it is often used to see whether more than one value is true: eg
var isAngry:boolean = true;
var isSad:boolean = true;
var isHappy:boolean = false;
if (isAngry + isSad + isHappy > 1) console.log("You are confusing me!");
The IntelliSense error is "Invalid '+' expression - types not known to support the addition operator".
It is of course possible to get around this with explicit type conversion, but it would be nice to have implicit coercion working:
if (Number(isAngry) + Number(isSad) + Number(isHappy) > 1) console.log("You are still confusing me!");
Many thanks
Todd