Javascript 添加可能包含空/未定义值的值

Javascript 添加可能包含空/未定义值的值,javascript,angularjs,Javascript,Angularjs,很抱歉,我就是找不到信息 我的脚本需要将12个项目添加到一起,但其中一些可能有空/未定义的值 即 1+null+3+4+null+null+7 我怎样把这些加在一起 $scope.wepweight = ($scope.selectedWeapon1Ship1.Vars.weight) +($scope.selectedWeapon2Ship1.Vars.weight) 目前,一旦填充了所有ng模型,这些值就会相加(因为有空/未定义的值),但我需要保持一个运行总数 (在JS部分中搜索“//计

很抱歉,我就是找不到信息

我的脚本需要将12个项目添加到一起,但其中一些可能有空/未定义的值

1+null+3+4+null+null+7

我怎样把这些加在一起

$scope.wepweight = ($scope.selectedWeapon1Ship1.Vars.weight) +($scope.selectedWeapon2Ship1.Vars.weight)
目前,一旦填充了所有ng模型,这些值就会相加(因为有空/未定义的值),但我需要保持一个运行总数


(在JS部分中搜索“//计算船体重量”以查看相关代码部分)

您可以使用
|
操作符检查值是否为
空值
未定义
,如果是,则向其添加
0


console.log(1+(null | | 0)+3+4+(undefined | | 0)+7)//15
您可以使用
|
操作符检查值是否为
null
未定义
,如果是,则向其添加
0

console.log(1+(null | | 0)+3+4+(未定义| | 0)+7)//15
您可以使用检查值是否为
null
未定义
,然后使用右侧值

const sum=1+(null±0)+2+(未定义±0);
控制台日志(总和)
您可以使用检查值是否为
null
undefined
,然后使用右边的值

const sum=1+(null±0)+2+(未定义±0);

控制台日志(总和)您没有指定从何处获取值,但它们要么存储在数组中,要么可以放入数组中。 一旦将它们放入阵列中,就可以通过以下方式实现优雅:


这段代码的作用是,它以0开头,并将每一个数字元素(不是空的)相加。

您没有指定值的来源,但它们要么存储在数组中,要么可以放在数组中。 一旦将它们放入阵列中,就可以通过以下方式实现优雅:


这段代码的作用是,它以0开头,并将每一个数字元素(不是空的)相加。

我认为这段代码可以帮助您

$scope.wepweight = calcSumValue();
function calcSumValue() {
   let ans = 0;
   for(let i = 1; i <= 12; i++) {
       const value = $scope[`selectedWeapon${i}Ship1`].Vars.weight
       if (value)
           ans += value;
   }
   return ans;
}
$scope.wepweight=calcSumValue();
函数calcSumValue(){
设ans=0;

我想这个能帮你

$scope.wepweight = calcSumValue();
function calcSumValue() {
   let ans = 0;
   for(let i = 1; i <= 12; i++) {
       const value = $scope[`selectedWeapon${i}Ship1`].Vars.weight
       if (value)
           ans += value;
   }
   return ans;
}
$scope.wepweight=calcSumValue();
函数calcSumValue(){
设ans=0;

对于(设i=1;我尝试了| | 0方法,但它仍然没有添加values@WayneGilliver
(variable==null?0:variable)
-这有效吗?我尝试了| | 0方法,但它仍然没有添加values@WayneGilliver
(variable==null?0:variable)
-这有用吗?我已经将小提琴添加到OP中,以便您可以看到(搜索//计算JS部分中船体的重量)我已将我的小提琴添加到OP中,以便您可以看到(搜索//计算JS部分中船体的重量)