JavaScript Void 0 - Que fait javascript: void (0); Signifier?

Le mot vide signifie «espace complètement vide» selon le dictionnaire. Ce terme, lorsqu'il est utilisé en programmation, fait référence à un retour de «rien» - une «valeur vide» pour ainsi dire.

Quel est le mot-clé void?

Lorsqu'une fonction est vide, cela signifie que la fonction ne renvoie rien. Ceci est similaire aux fonctions en JavaScript qui retournent undefinedexplicitement, comme ceci:

function und() { return undefined } und() 

ou implicitement, comme ceci:

function und() { } und() 

Indépendamment des expressions et des déclarations dans les fonctions ci-dessus (ajoute 2 nombres ensemble, trouve la moyenne de 5 nombres, peu importe), aucun résultat n'est renvoyé.

Nous savons maintenant de quoi il voids'agit. Et quoi javascript:void(0)?

Qu'est-ce que c'est javascript:void(0)?

Si nous divisons cela, nous avons javascript:et void(0). Regardons chaque partie plus en détail.

javascript:

C'est ce qu'on appelle une pseudo URL . Lorsqu'un navigateur reçoit cette valeur comme valeur de hrefsur une balise d'ancrage, il interprète le code JS qui suit les deux points (:) plutôt que de traiter la valeur comme un chemin référencé.

Par exemple:

Link 

Lorsque vous cliquez sur "Lien", voici le résultat:

Comme vu ci-dessus, le navigateur ne traite pas hrefcomme un chemin référencé. Au lieu de cela, il le traite comme du code JavaScript commençant après "javascript:" et séparé par des points-virgules.

void(0)

L'opérateur void évalue les expressions données et renvoie undefined.

Par exemple:

const result = void(1 + 1); console.log(result); // undefined 

1 + 1est évalué mais undefinedrenvoyé. Pour confirmer cela, voici un autre exemple:

Heading

void(document.body.style.backgroundColor = 'red', document.body.style.color = 'white' )

Le résultat du code ci-dessus est:

Voici un autre exemple:

console.log(void(0) === undefined) // true 

Combiner javascript:etvoid(0)

Parfois, vous ne souhaitez pas qu'un lien vous permette d'accéder à une autre page ou de recharger une page. En utilisant javascript:, vous pouvez exécuter du code qui ne modifie pas la page actuelle.

Ceci, utilisé avec des void(0)moyens, ne faites rien - ne rechargez pas, ne naviguez pas, n'exécutez aucun code.

Par exemple:

Link 

Le mot "Lien" est traité comme un lien par le navigateur. Par exemple, il est focalisable, mais il ne permet pas d'accéder à une nouvelle page.

0est un argument passé à voidqui ne fait rien et ne renvoie rien.

Le code JavaScript (comme vu ci-dessus) peut également être passé comme arguments à la voidméthode. Cela permet à l'élément de lien d'exécuter du code mais il conserve la même page.

Par exemple:

Link 

Lorsque le bouton est cliqué, voici le résultat:

Avec void, il indique au navigateur de ne rien retourner (ni de retourner undefined).

Un autre cas d'utilisation des liens avec la javascript:void(0)référence est que parfois, un lien peut exécuter du code JavaScript en arrière-plan et la navigation peut être inutile. Dans ce cas, les expressions seraient utilisées comme arguments passés à void.

Conclusion

Dans cet article simplifié, nous avons appris ce qu'est l' voidopérateur, comment il fonctionne et comment il est utilisé avec la javascript:pseudo URL pour les hrefattributs des liens.

Cela garantit qu'une page ne navigue pas vers une autre page ou ne recharge pas la page actuelle lorsque l'utilisateur clique dessus.