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

269
Views
Objeto de propagación de JavaScript como parámetros de función

Estoy tratando de difundir un objeto para usarlo como parámetro de una función. Estoy bastante seguro de que he visto hacer esto, pero no puedo recordar cómo. Sé cómo hacer esto con una matriz, pero necesito hacerlo con un objeto. Además, no puedo simplemente convertir el objeto en una matriz usando Object.values(obj) ya que en algunos casos el orden de los valores no coincidirá con el orden de los parámetros.

 function sum(x, y, z) { return x + y + z } obj = {x: 23, y: 52, z: 12} sum(...obj) // <--- WHAT DO I PUT HERE?

Usando una matriz, simplemente haría:

 function sum(x, y, z) { return x + y + z } arr = [23, 52, 12] sum(...arr)

En python, esto sería:

 def sum(x, y, z): return x + y + z dict = {'x': 23, 'y': 52, 'z': 12} sum(**dict)
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Además, no puedo simplemente convertir el objeto en una matriz usando Object.values(obj) ya que en algunos casos el orden de los valores no coincidirá con el orden de los parámetros.

Si este es el caso, entonces no hay forma de hacerlo sin enumerar de alguna manera el orden de propiedad deseado o cambiando la firma de la función.

 function sum(x, y, z) { return x + y + z } // while this works, it's quite unusual - I don't recommend it sum.params = ['x', 'y', 'z']; const obj = {x: 23, y: 52, z: 12} console.log(sum(...sum.params.map(param => obj[param])));

 function sum({ x, y, z }) { return x + y + z } const obj = {x: 23, y: 52, z: 12} console.log(sum(obj));

about 4 years ago · Juan Pablo Isaza Report

0

Puede capturar campos de objetos por nombre como se muestra a continuación

 function sum({x,y}) { console.log(x + y); } obj = { x: 5, y: 10 } sum(obj) // output: 15
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!