Distintos tipos de filtros aritméticos

Los filtros aritméticos permiten realizar operaciones matemáticas en números dentro de una plantilla. Como con todos los filtros, los filtros de matemáticas también se pueden encadenar y se aplican en orden de izquierda a derecha.

Los filtros de matemáticas permiten realizar operaciones matemáticas en números. Un filtro se separa del valor al que se aplica mediante una barra vertical, y algunos filtros aceptan parámetros.

Cómo funcionan los filtros aritméticos

Los filtros también se pueden combinar, y se aplican en orden de izquierda a derecha. Por ejemplo, la expresión {{ 10 | times: 2 | minus: 5 | divided_by: 3 }} produce 5.

En esta expresión, el valor inicial es 10, primero se multiplica por 2, después se restan 5 unidades y finalmente el resultado se divide por 3.

ExpresiónResultado
{{ 10 | times: 2 | minus: 5 | divided_by: 3 }}5
{{ 2 | times: 2 | minus: 1 }}3

Clasificación de los filtros aritméticos

Los filtros aritméticos se pueden organizar en operaciones de suma, resta, multiplicación, división, resto, redondeo al alza, redondeo a la baja y aproximación al entero más próximo.

  • plus: suma un número a otro número.
  • minus: resta un número de otro número.
  • times: multiplica un número por otro número.
  • divided_by: divide un número por otro número.
  • modulo: divide un número por otro número y devuelve el resto.
  • ceil: redondea al alza un valor hasta el entero más cercano.
  • floor: redondea a la baja un valor hasta el entero más cercano.
  • round: redondea un valor al entero más próximo o al número especificado de decimales.

Filtro plus: sumar valores

El filtro plus suma un número a otro número. Su sintaxis consiste en aplicar el filtro al valor inicial y escribir como parámetro la cantidad que se desea añadir.

ExpresiónResultado
{{ entityview.page | plus: 1 }}12
{{ 10 | plus: 1.1 }}11
{{ 10.1 | plus: 1 }}11.1

Si entityview.page tiene el valor 11, la expresión {{ entityview.page | plus: 1 }} devuelve 12. El filtro también permite trabajar con números decimales.

Filtro minus: restar valores

El filtro minus resta un número de otro número. El valor situado antes de la barra vertical es el minuendo y el parámetro del filtro es la cantidad que se resta.

ExpresiónResultado
{{ entityview.page | minus: 1 }}10
{{ 10 | minus: 1.1 }}9
{{ 10.1 | minus: 1 }}9.1

Cuando entityview.page tiene el valor 11, la expresión {{ entityview.page | minus: 1 }} devuelve 10. En los ejemplos con decimales, el resultado mantiene la parte decimal correspondiente.

Filtro times: multiplicar valores

El filtro times multiplica un número por otro número. El parámetro indica el factor por el que se multiplica el valor inicial.

ExpresiónResultado
{{ 10 | times: 2 }}20
{{ 10 | times: 2.2 }}20
{{ 10.1 | times: 2 }}20.2

La operación puede utilizar factores enteros o decimales. Por ejemplo, {{ 10 | times: 2 }} devuelve 20, mientras que {{ 10.1 | times: 2 }} devuelve 20.2.

Filtro divided_by: dividir valores

El filtro divided_by divide un número por otro número. La forma del resultado depende del tipo de valor utilizado en la expresión.

ExpresiónResultado
{{ 10 | divided_by: 2 }}5
{{ 10 | divided_by: 3 }}3
{{ 10.0 | divided_by: 3 }}3.333333

En el ejemplo {{ 10 | divided_by: 3 }}, el resultado es 3. En cambio, {{ 10.0 | divided_by: 3 }} devuelve 3.333333, porque el valor inicial se expresa como decimal.

Filtro modulo: obtener el resto

El filtro modulo divide un número por otro número y devuelve el resto. Es útil para comprobar si una división es exacta o para trabajar con ciclos y patrones numéricos.

La expresión {{ 12 | modulo: 5 }} devuelve 2, porque al dividir 12 entre 5 queda un resto de 2.

Filtros de redondeo

Los filtros de redondeo permiten convertir valores decimales en enteros o limitar la cantidad de cifras decimales del resultado. La elección del filtro depende de si se necesita redondear hacia arriba, hacia abajo o hacia el valor entero más próximo.

Filtro ceil

El filtro ceil redondea al alza un valor hasta el entero más cercano. Cualquier parte decimal hace que el resultado avance hasta el siguiente entero.

ExpresiónResultado
{{ 4.6 | ceil }}5
{{ 4.3 | ceil }}5

Tanto 4.6 como 4.3 se convierten en 5 mediante el filtro ceil.

Filtro floor

El filtro floor redondea a la baja un valor hasta el entero más cercano. La parte decimal se elimina al tomar el entero inferior.

ExpresiónResultado
{{ 4.6 | floor }}4
{{ 4.3 | floor }}4

Los valores 4.6 y 4.3 se convierten en 4 mediante el filtro floor.

Filtro round

El filtro round redondea un valor al entero más próximo o al número especificado de decimales.

ExpresiónResultado
{{ 4.6 | round }}5
{{ 4.3 | round }}4
{{ 4.5612 | round: 2 }}4.56

Cuando no se proporciona un parámetro adicional, round redondea al entero más próximo. Cuando se proporciona el parámetro 2, como en {{ 4.5612 | round: 2 }}, el resultado conserva dos decimales.

Encadenamiento de operaciones aritméticas

Los filtros aritméticos pueden encadenarse para ejecutar varias operaciones en una sola expresión. Los filtros se aplican en orden de izquierda a derecha.

La expresión {{ 10 | times: 2 | minus: 5 | divided_by: 3 }} se procesa de la siguiente manera:

  1. El valor inicial es 10.
  2. times: 2 multiplica 10 por 2.
  3. minus: 5 resta 5 al resultado anterior.
  4. divided_by: 3 divide el resultado entre 3.
  5. El resultado final es 5.

El encadenamiento permite combinar operaciones sin crear variables intermedias. También es posible combinar filtros aritméticos con otros tipos de filtros cuando el resultado de una operación debe utilizarse posteriormente.

Diferencia entre los filtros aritméticos y otros filtros

Los filtros de matemáticas permiten realizar operaciones matemáticas en números. Los filtros de matriz se usan para trabajar con matrices, mientras que los filtros de cadena manipulan cadenas.

Los filtros por fecha se pueden usar para la aritmética de fecha o para convertir valores de fecha y hora en distintos formatos. Los filtros de escape reemplazan los caracteres de cadena con secuencias de escape o eliminan los caracteres de cadena no válidos según el tipo de destino.

FamiliaFinalidad
Filtros de matemáticasRealizar operaciones matemáticas en números.
Filtros de matrizTrabajar con matrices.
Filtros por fechaRealizar aritmética de fecha o convertir valores de fecha y hora.
Filtros de escapeInsertar caracteres de escape o eliminar caracteres no válidos.
Filtros de cadenaManipular cadenas.

Ejemplos combinados

Una operación sencilla puede combinar multiplicación y resta: {{ 2 | times: 2 | minus: 1 }}. El resultado es 3.

También se pueden utilizar valores provenientes de una variable o de una propiedad. Por ejemplo, {{ entityview.page | plus: 1 }} suma una unidad al valor de entityview.page, mientras que {{ entityview.page | minus: 1 }} resta una unidad.

Las operaciones con números decimales permiten expresar resultados fraccionarios, como ocurre con {{ 10.1 | plus: 1 }}, que produce 11.1, o con {{ 10.1 | times: 2 }}, que produce 20.2.

Selección del filtro adecuado

  • Utiliza plus para incrementar un valor.
  • Utiliza minus para reducir un valor.
  • Utiliza times para multiplicar un valor.
  • Utiliza divided_by para obtener el cociente de una división.
  • Utiliza modulo para obtener el resto de una división.
  • Utiliza ceil cuando el resultado deba redondearse hacia arriba.
  • Utiliza floor cuando el resultado deba redondearse hacia abajo.
  • Utiliza round cuando se necesite aproximar al entero más próximo o conservar una cantidad concreta de decimales.

La combinación de estos filtros permite construir expresiones compactas para transformar números, calcular resultados y presentar valores con el formato requerido.

noimgs

tags: #distintos #tipos #de #filtros #aritmeticos

Publicaciones populares: