Saltar al contenido

Cómo analizar Int en Angular.js

Pudiera darse el caso de que encuentres algún problema con tu código o proyecto, recuerda probar siempre en un entorno de testing antes subir el código al proyecto final.

Solución:

No puedes (al menos por el momento) usar parseInt dentro de expresiones angulares, ya que no se evalúan directamente. citando El documento:

Angular no usa JavaScript eval() para evaluar expresiones. En lugar de Angular $parse El servicio procesa estas expresiones.

Las expresiones angulares no tienen acceso a variables globales como
window, document o location. Esta restricción es intencional. Evita el acceso accidental al estado global, una fuente común de errores sutiles.

Entonces puedes definir un total() en su controlador, luego utilícelo en la expresión:

// ... somewhere in controller
$scope.total = function()  
  return parseInt($scope.num1) + parseInt($scope.num2) 


// ... in HTML
Total:  total() 

Aún así, eso parece ser bastante voluminoso para una operación tan simple como sumar los números. La alternativa es convertir los resultados con -0 op:

Total: num1-0 + (num2-0)

… pero eso obviamente no lo hará parseInt valores, solo emitir ellos a Números (|number filtro impide mostrar null si este lanzamiento resulta en NaN). Así que elija el enfoque que se adapte a su caso particular.

Opción 1 (a través del controlador):

angular.controller('numCtrl', function($scope, $window) 
   $scope.num = parseInt(num , 10);


Opción 2 (a través de un filtro personalizado):

app.filter('num', function() 
    return function(input) 
       return parseInt(input, 10);
    
);

 num) + (num2 

Opción 3 (mediante expresión):

Declara esto primero en tu controlador:

$scope.parseInt = parseInt;

Luego:

parseInt(num1)+parseInt(num2)

Opción 4 (de raina77ow)

(num1-0) + (num2-0)




Total: num1 + num2

y en js:

parseInt($scope.num1) + parseInt($scope.num2)

Calificaciones y reseñas

Si tienes alguna sospecha y disposición de ascender nuestro post puedes escribir una disquisición y con gusto lo estudiaremos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *