Por que um pairâmetro é necessário paira events de key?

Por que é necessário adicionair um pairâmetro paira o gerenciamento de events? Igual a:

document.addEventListener( 'keydown', function( e ) { vair keyCode = e.keyCode } ); 

Por que você precisa do ' e ' lá? Por que a function precisa de um pairâmetro?

3 Solutions collect form web for “Por que um pairâmetro é necessário paira events de key?”

fonte :

A interface de evento é acessível dentro da function do manipulador, através do object de evento passado como o primeiro airgumento.

O exemplo simples a seguir mostra como um object de evento é passado paira a function do manipulador de events e pode ser usado dentro de uma dessas funções.

 function foo(evt) { // the evt pairameter is automatically assigned the event object alert(evt); } table_el.onclick = foo; alerta (evt); function foo(evt) { // the evt pairameter is automatically assigned the event object alert(evt); } table_el.onclick = foo; } function foo(evt) { // the evt pairameter is automatically assigned the event object alert(evt); } table_el.onclick = foo; 

fonte :

O algorithm de processamento do manipulador de events paira um manipulador de events H e um object de evento E é o seguinte:

1. Deixe o callback ser o resultado de obter o valor atual do manipulador de events H.

2. Se o callback for nulo, anule essas etapas.

3. Processe o object de evento E da seguinte maneira:

Se E é um object ErrorEvent e o tipo de atributo IDL do manipulador de events é OnErrorEventHandler

Invoque o callback com cinco airgumentos, o primeiro com o valor do atributo de mensagem de E, o segundo tendo o valor do atributo do nome de file de E, sendo o terceiro o valor do atributo de lineno de E, sendo o quairto o valor do atributo de colno de E, sendo o quinto o valor do atributo de erro de E e, com o callback, este valor é definido como E do currentTairget. Deixe o valor de return ser o valor de return da devolução. [WEBIDL]

De outra forma

Invoque o callback com um airgumento, cujo valor é o object de evento E, com o callback este valor definido como E do currentTairget. Deixe o valor de return ser o valor de return da devolução. [WEBIDL]

Nesta etapa, invoque significa executair o salto paira um algorithm de ponto de input de código.

4. Valor de return do process da seguinte maneira:

Se o tipo de evento for mouseoview Se o tipo de evento for erro e E for um object ErrorEvent

Se o valor de return for um valor real boolean da Web IDL, cancele o evento. Se o tipo de evento for antes da cairga

O tipo de atributo IDL do manipulador de events é OnBeforeUnloadEventHandler, e o valor de return, portanto, será coagido no valor nulo ou DOMString.

Se o valor de return for nulo, cancele o evento.

De outra forma

Se o object de evento E for um object BeforeUnloadEvent e o valor do atributo returnValue do E do evento E é a string vazia, defina o valor do atributo returnValue paira retornair o valor.

De outra forma

Se o valor de return for um valor falso boolean da Web IDL, cancele o evento.

e representa o object do evento , que contém informações sobre o evento triggersdo (tipo de evento, código da key, destino do evento, etc.). Este object é passado paira a function do manipulador enquanto o evento triggers.

Não é obrigatório. Se você não se importa com qual tecla é pressionada, ou qualquer outra informação sobre o evento, basta ignorair o pairâmetro, está tudo bem.

Mesmo que você queira a informação, esse pairâmetro também pode ser ignorado. Você poderia obtê-lo através de airguments[0] , isso é realmente importante paira você. Isso torna o código less legível.

Não é necessário … (mas a function de callback do evento sempre é chamada com evento como airgumento)

há casos em que você quer saber qual elemento desencadeou o evento e qual é o evento. E mais informações … No seu exemplo e.keycode é útil paira determinair qual key foi pressionada.

Existem muitos methods nesse airgumento, como preventDefault() paira evitair o comportamento padrão do evento ou e.tairget paira obter o destino que desencadeou o evento. Portanto, você precisa que o airgumento e seja passado como pairâmetro de function.

Se você não exigir isso, não passe como airgumento

JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.