No JS, tudo é um objeto, e até uma função é um objeto. O nome da função é na verdade uma variável que se refere a uma função para definir um objeto.
1. O que são argumentos?
Os argumentos neste corpo de função são muito especiais. Na verdade, eles são um objeto de matriz embutido da função onde estão localizados. Eles podem usar a matriz [i] e .length.
2. Qual é a sua função?
A sintaxe JS não suporta sobrecarga! No entanto, o objeto de argumentos pode ser usado para simular o efeito de sobrecarga.
Objeto de argumentos: no objeto de função, ele é criado automaticamente para receber todos os parâmetros e objetos de matriz de valor.
Argumentos [i]: obtenha o valor do parâmetro passado no subscrito i
Argumentos.Length: Obtenha o número de parâmetros passados!
Sobrecarga:
Múltiplas funções com o mesmo nome de função e lista de parâmetros diferentes podem ser definidas no programa.
O chamador não precisa distinguir os parâmetros de cada função.
Durante a execução, o programa determina automaticamente qual função optar por executar com base no número de parâmetros passados.
Exemplos são os seguintes:
// 1. Se o usuário passar em um parâmetro, encontre a soma da função quadrada (a) {console.log (a*a);} // se o usuário passar em dois parâmetros, encontre a soma da função da soma (a, b) {console.log (a+b);} soma (4); //? soma (4,5); //?No exemplo acima, a intenção original é permitir que a soma da função () do mesmo nome em saída de resultados diferentes de acordo com parâmetros diferentes, mas a soma é o nome da função e é essencialmente uma variável.
O segundo substituirá o primeiro, então a resposta de saída correta acima é: nan, 9. Portanto, isso obviamente não é possível.
Se você usar argumentos, será muito mais simples.
Os 2 exemplos a seguir:
// 2. function calc () {// Se o usuário passar em um parâmetro, quadrado if (argumentos.Length == 1) {console.log (argumentos [0]*argumentos [0]);} else if (argumentos.Length == 2) {// se o usuário passar em dois parâmetros, soma console.log (argumentos [0]+]+. // 16CALC (4,5); // 9 /*3. Não importa quantos números o usuário passa, a soma pode ser somada*/function add () {// argumentos: [] // transação todos os elementos em argumentos e acumulem (var) i = 0, soma = 0; i <argumentos.length; soma+= argumentos [i ++]; //6console.log(Add(1,2,3,4,5,6)); // 21Este é o efeito do JS usando a sobrecarga de argumentos. Um entendimento simples é reutilizar uma função.
Argumentos.Length é determinado por argumentos reais, ou seja, o número de parâmetros na função é determinado pelo número de parâmetros na chamada de função!
O exposto acima é o conhecimento relevante do objeto de argumentos em JavaScript apresentado a você pelo editor. Espero que seja útil para você. Se você tiver alguma dúvida, deixe -me uma mensagem e o editor responderá a você a tempo. Muito obrigado pelo seu apoio ao site wulin.com!