是否有一种有效的方法来添加两个变量a以及b它们何时可以是动态的?我还需要检查它们的类型是否是数字。我认为我在下面描述的方式不是实现此目的的最佳/现代方式。请帮忙。编辑我还想确保如果一个变量不是数字(或null),那么该变量C从变量中获取其值,即数字。我该怎么做?const a;const b;let c;// variables a and b are dynamic and could be null.if(typeOf(a)==='number' && typeOf(b)==='number'){if(!a && b){c=b}if(a && !b){c=a}if(a && b){c=a+b}}
2 回答
慕丝7291255
TA贡献1859条经验 获得超6个赞
您可以简单地检查typeof
并使用逻辑或运算符转换NaN
为0
.
if(typeof a ==='number' && typeof b === 'number'){ c = (a || 0) + (b || 0); }
为了也允许将无效值视为 0,您可以使用:
c = (typeof a === 'number' ? (a || 0) : 0) + (typeof b === 'number' ? (b || 0) : 0)
也可以这样写:
c = (typeof a === 'number' && !isNaN(a) ? a : 0) + (typeof b === 'number' && !isNaN(b) ? b : 0)
潇潇雨雨
TA贡献1833条经验 获得超4个赞
我想你在找
const c = (typeof a == 'number' ? a : 0) + (typeof b == 'number' ? b : 0);
添加回答
举报
0/150
提交
取消