"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > sobrecarga de método em javaScript

sobrecarga de método em javaScript

Publicado em 2024-11-08
Navegar:803

method overloading in javaScript

JavaScript, a sobrecarga de métodos (como em linguagens como Java ou C#) não é suportada diretamente porque as funções só podem ter uma definição. No entanto, o JavaScript sendo dinâmico nos permite imitar a sobrecarga usando técnicas como:

Verificando contagem ou tipos de argumentos.
Usando parâmetros padrão.
Usando argumentos ou parâmetros restantes.
Abaixo estão algumas maneiras de implementar o comportamento de sobrecarga.

1. Usando objetos de argumentos

`function add() {
  if (arguments.length === 1) {
    return arguments[0];  // Single argument
  } else if (arguments.length === 2) {
    return arguments[0]   arguments[1];  // Two arguments
  }
}
console.log(add(5));       // 5
console.log(add(5, 10));   // 15`

arguments é um objeto semelhante a um array que contém todos os parâmetros passados ​​​​para a função.
Com base no número de argumentos, executamos lógicas diferentes.

2. Sobrecarga com verificações de tipo

`function greet(name) {
  if (typeof name === "string") {
    console.log(`Hello, ${name}!`);
  } else if (Array.isArray(name)) {
    console.log(`Hello, ${name.join(", ")}!`);
  }
}

greet("Alice");           // Hello, Alice!
greet(["Alice", "Bob"]);  // Hello, Alice, Bob!`

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/munna_thakur_2019444f0351/method-overloading-in-javascript-1dg2?1 Se houver alguma violação, entre em contato com [email protected] para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3