Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

256
Vistas
¿Cómo puedo mapear a través de una matriz 2D usando una Condición?

Estoy tratando de crear una fórmula para Google Sheets usando Google Script, tengo dos matrices, algo como esto:

  • Arr1 = [1000,2000,3000,4000]
  • Arr2 = [Verdadero,Falso,Falso,Verdadero]

y me gustaría hacer algunos cálculos (ejemplo: multiplicar por 2) solo sobre el "Verdadero" correspondiente. Primero traté de crear un método zip para convertir ambas matrices en una matriz 2D:

const zip = (a1, a2) => a1.map((x, i) => [x, a2[i]]);

Funcionó, pero dado que la documentación de Google dice que usar "mapa" es la mejor manera de crear fórmulas, ¿cómo puedo usar el mapa para repasar la nueva matriz 2D, devolver 0 cuando es "falso" y hacer mi cálculo cuando es " verdadero"?

Documentación de Google sobre el uso del mapa de métodos: https://developers.google.com/apps-script/guides/sheets/functions

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

No necesita crear el mapa zip que está creando arriba, siempre que ambas matrices tengan la misma longitud, puede mapear a través de la primera matriz, luego acceder al índice actual de la segunda matriz y verificar si es cierto en esta ubicación , si se ejecuta la operación matemática (que almacené dentro de una función), si es falso, coloque 0 en su lugar. Vea abajo:

 const arr1 = [1000, 2000, 3000, 4000]; const arr2 = [true, false, true, true]; function whatYouWantToDo(x) { return x * 2; } console.log(arr1.map((x, i) => [arr2[i] ? whatYouWantToDo(x) : 0]));

about 4 years ago · Juan Pablo Isaza Denunciar

0

 var Arr1 = [1000,2000,3000,4000]; var Arr2 = [true,false,false,true]; console.log(Arr1.map((value, index) => value + (value * Number(Arr2[index]))));

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda