2014-01-09 29 views
0

我有一個標準的$scope.totals = $scope.totals = {storage:0, dailystorage:0};angular.forEach,它將cam.storage添加到$scope.totals.storage給我的總存儲空間。AngularJS數學加入字符串,而不是添加

我用這做那:

$scope.totals.storage = $scope.totals.storage+cam.storage; 

的問題是,說如果兩個cam.storage21.0915.82,它會讓$scope.totals.storage21.0915.82 - 基本上將他們像琴絃,而不是像數學。

我該如何加入 - 不是加入?

回答

1

從您已發佈的信息來看(驗證$scope.totals已經是一個數字),cam.storage是一個字符串。你需要將它添加到現有的價值之前將其解析到一個號碼:

$scope.totals.storage += parseFloat(cam.storage); 
+0

這工作完美!我要選擇這個,因爲它是最乾淨的選項。謝謝! – itamar

1

如果它們連接而不是添加,則聽起來像您需要將它們解析爲小數(您也可以使用toFixed(int)來根據需要限制小數位數)。

$scope.totals.storage = parseFloat($scope.totals.storage)+parseFloat(cam.storage); 
-1

我的解決方案我使用{{(A * 1)+(B * 1)}}它工作。

相關問題