Reordenar Argumentos de Función

JavaScriptJavaScriptBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, exploraremos la función rearg en JavaScript, que nos permite reordenar el orden de los argumentos pasados a una función basados en índices especificados. Aprenderemos cómo utilizar el método Array.prototype.map() y el operador de propagación para transformar los argumentos e invocar la función original con los argumentos reordenados. Al final de este laboratorio, tendrás una buena comprensión de cómo utilizar la función rearg para manipular los argumentos de una función en JavaScript.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/functions("Functions") javascript/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") javascript/AdvancedConceptsGroup -.-> javascript/closures("Closures") javascript/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") javascript/AdvancedConceptsGroup -.-> javascript/spread_rest("Spread and Rest Operators") subgraph Lab Skills javascript/variables -.-> lab-28577{{"Reordenar Argumentos de Función"}} javascript/data_types -.-> lab-28577{{"Reordenar Argumentos de Función"}} javascript/arith_ops -.-> lab-28577{{"Reordenar Argumentos de Función"}} javascript/comp_ops -.-> lab-28577{{"Reordenar Argumentos de Función"}} javascript/functions -.-> lab-28577{{"Reordenar Argumentos de Función"}} javascript/array_methods -.-> lab-28577{{"Reordenar Argumentos de Función"}} javascript/closures -.-> lab-28577{{"Reordenar Argumentos de Función"}} javascript/higher_funcs -.-> lab-28577{{"Reordenar Argumentos de Función"}} javascript/spread_rest -.-> lab-28577{{"Reordenar Argumentos de Función"}} end

Cómo reordenar los argumentos de una función en JavaScript

Para reordenar los argumentos de una función en JavaScript, puedes utilizar la función rearg(). Primero, crea una función que invoque la función proporcionada con sus argumentos organizados de acuerdo con los índices especificados. Puedes utilizar Array.prototype.map() para reordenar los argumentos basados en indexes. Luego, utiliza el operador de propagación (...) para pasar los argumentos transformados a fn.

Aquí hay un ejemplo de cómo utilizar la función rearg():

const rearg =
  (fn, indexes) =>
  (...args) =>
    fn(...indexes.map((i) => args[i]));

En este ejemplo, utilizamos rearg() para crear una nueva función que reordena los argumentos de otra función.

var rearged = rearg(
  function (a, b, c) {
    return [a, b, c];
  },
  [2, 0, 1]
);
rearged("b", "c", "a"); // ['a', 'b', 'c']

En el código anterior, creamos una nueva función rearged que reordena los argumentos de la función function(a, b, c) { return [a, b, c]; }. El argumento indexes especifica el orden en el que se deben reordenar los argumentos. En este caso, queremos que el tercer argumento venga primero, el primer argumento venga segundo y el segundo argumento venga tercero. Cuando llamamos a rearged('b', 'c', 'a'), devuelve ['a', 'b', 'c'], que es el resultado de llamar a la función original con los argumentos reordenados.

Resumen

¡Felicitaciones! Has completado el laboratorio de Reordenar Argumentos de Función. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.