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

324
Vistas
Cómo usar Foreach en JavaScript para hacer la multiplicación de 2 cuadros de texto de varias líneas

Estoy aprendiendo un nuevo concepto en JavaScript. ¿Puede algún cuerpo ayudarme a lograr los siguientes resultados?

ingrese la descripción de la imagen aquí

Values1(this.getField("Text6")) es un cuadro de texto de varias líneas

Values2(this.getField("Text7")) es un cuadro de texto de varias líneas

El resultado (this.getField("Text8")) es el producto del valor 1 y el valor 2

Probé el siguiente código para mostrar solo los valores 2 en el cuadro de resultados usando el método foreach. Pero no estoy seguro de cómo realizar la multiplicación dentro de él.

 var values1 = this.getField("Text6").value.split('\r'); var values2 = this.getField("Text7").value.split('\r'); this.getField("Text8").value = ""; values2.forEach(element => this.getField("Text8").value +=(element+'\n'));

Salida de corriente: ingrese la descripción de la imagen aquí

2 :

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

0

El segundo argumento de la devolución de llamada forEach es el índice de matriz. Puede usar eso para indexar en values1 , para que pueda multiplicarlos.

 values2.forEach((element, index) => this.getField("Text8").value +=(element * values1[index] + '\n'));
about 4 years ago · Juan Pablo Isaza Denunciar

0

getField no es una función nativa de JavaScript. Lo definiré en el fragmento a continuación.

Algunas observaciones:

  • split('\r') puede no ser la mejor manera de obtener las líneas, ya que también puede haber \n caracteres allí. En su lugar, haría coincidir los números con una expresión regular ( [\d.]+ ).
  • Como esta división produce cadenas, las convertiría inmediatamente en números aplicándoles la función Number .
  • En lugar de acumular el resultado con += , cree una matriz con los productos y luego únalos en un texto de varias líneas para asignar (una vez) al campo.
  • Use el índice que puede obtener durante el ciclo, y con ese índice obtenga el otro número para multiplicar con

 var getField = document.getElementById.bind(document); var collect = id => (this.getField(id).value.match(/[\d.]+/g) || []).map(Number); var values1 = collect("Text6"); var values2 = collect("Text7"); this.getField("Text8").value = values2.map((element, i) => element*values1[i]).join("\n");
 textarea { width: 5em; height: 150px; margin-right: 30px; }
 <textarea id=Text6> 1 2 3 4 </textarea> <textarea id=Text7> 4 5 6 7 </textarea><textarea id=Text8></textarea>

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