Die Rolle von Argumenten in JS

In JavaScript argumentsein spezielles Objekt, das innerhalb einer Funktion verwendet wird, um auf an eine Funktion übergebene Parameter zu verweisen. Konkret argumentsermöglicht Ihnen das Objekt den Zugriff auf alle an eine Funktion übergebenen Parameter, unabhängig davon, ob Sie sie in der Funktionsdefinition benannt haben.

Im Folgenden sind argumentsdie Hauptfunktionen von Objekten aufgeführt:

  1. Auf alle Parameter einer Funktion zugreifen: arguments Das Objekt ermöglicht Ihnen den Zugriff auf alle an eine Funktion übergebenen Parameter, ohne die Namen dieser Parameter im Voraus zu kennen. Dies ist nützlich für die Arbeit mit einer variablen Anzahl von Argumenten, da Sie über argumentsdas Objekt innerhalb der Funktion iterieren können, um auf diese zuzugreifen.

  2. Simulierte Überladung: JavaScript unterstützt keine Überladung von Funktionen (d. h. mehrere Funktionen mit demselben Namen, aber unterschiedlicher Anzahl oder Typen von Parametern). Mithilfe argumentsvon Objekten können Sie eine Funktion schreiben, die abhängig von der Anzahl und Art der übergebenen Argumente unterschiedliche Operationen ausführt und so die Auswirkungen einer Funktionsüberladung simuliert.

  3. Übergeben von Parametern: Sie können ein Objekt verwenden arguments, um Parameter an andere Funktionen zu übergeben. Dies ist in manchen Fällen nützlich, insbesondere wenn Sie nicht wissen, wie viele Parameter Sie übergeben müssen oder welche Parameternamen sie haben.

  4. Überprüfen Sie die Anzahl der Argumente: Sie können arguments.lengthdie Eigenschaft verwenden, um die Anzahl der Argumente zu bestimmen, die an die Funktion übergeben werden, um je nach Bedarf verschiedene Aktionen auszuführen.

Es ist wichtig zu beachten, dass argumentsdas Objekt zwar in manchen Situationen sehr nützlich ist, es sich jedoch nicht um ein echtes Array, sondern um ein arrayähnliches Objekt handelt. Daher verfügt es nicht über alle Methoden von Arrays, wie z. pushB. und pop. Wenn Sie Array-Operationen für Argumente ausführen müssen, können Sie diese argumentsbeispielsweise in ein echtes Array konvertieren Array.from(arguments)oder den Spread-Operator verwenden ....
Beispiel:
Wenn Sie ein Objekt verwenden, argumentsum auf die Parameter einer Funktion zuzugreifen, finden Sie hier ein einfaches Beispiel:

function calculateSum() {
    
    
  let sum = 0;
  
  // 使用 arguments 对象来访问传递给函数的所有参数
  for (let i = 0; i < arguments.length; i++) {
    
    
    sum += arguments[i];
  }

  return sum;
}

const result = calculateSum(1, 2, 3, 4, 5);
console.log(result); // 输出 15,因为 1 + 2 + 3 + 4 + 5 = 15

In diesem Beispiel calculateSumgibt die Funktion Parameter nicht explizit an, sondern verwendet argumentsein Objekt, um auf alle an sie übergebenen Parameter zuzugreifen. Durch die Iteration über argumentsdas Objekt kann die Funktion alle Argumente addieren und deren Summe zurückgeben.

Darüber hinaus ist hier ein Beispiel, das zeigt, wie man argumentsein Objekt verwendet, um die Überladung einer Funktion zu simulieren:

function greet() {
    
    
  if (arguments.length === 0) {
    
    
    console.log("Hello, there!");
  } else if (arguments.length === 1) {
    
    
    console.log("Hello, " + arguments[0] + "!");
  } else {
    
    
    console.log("Too many arguments!");
  }
}

greet(); // 输出 "Hello, there!"
greet("Alice"); // 输出 "Hello, Alice!"
greet("Bob", "Eve"); // 输出 "Too many arguments!"

In diesem Beispiel greetführt die Funktion basierend auf der Anzahl der an sie übergebenen Argumente unterschiedliche Operationen aus und simuliert so den Effekt einer Funktionsüberladung.

おすすめ

転載: blog.csdn.net/z2000ky/article/details/132871583