Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

314
Views
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 answers
Answer question

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 Report

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!