是否有一種有效的方法來添加兩個變量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
提交
取消