JavaScripti kehtetu 0 - mida javascript: void (0); Tähendab?

Sõna void tähendab sõnastiku järgi "täiesti tühja ruumi". See termin viitab programmeerimisel kasutatuna "mitte millegi" - nii-öelda "tühja väärtuse" - tagastamisele.

Mis on tühine märksõna?

Kui funktsioon on tühine, tähendab see, et funktsioon ei tagasta midagi. See sarnaneb JavaScripti funktsioonidega, mis naasevad undefinedselgesõnaliselt, näiteks:

function und() { return undefined } und() 

või kaudselt, näiteks:

function und() { } und() 

Sõltumata ülaltoodud funktsioonide avaldistest ja lausetest (liidetakse 2 numbrit kokku, leitakse 5 numbri keskmine, olenemata), tulemust ei tagastata.

Nüüd teame, mida see voidmärksõna endast kujutab. Aga kuidas javascript:void(0)?

Mis on javascript:void(0)?

Kui see lahku jagada, on meil javascript:ja void(0). Vaatame iga osa üksikasjalikumalt.

javascript:

Seda nimetatakse pseudo-URL-iks . Kui brauser saab selle väärtuse hrefankurdussildi väärtusena , tõlgendab see JS-koodi, mis järgneb koolonile (:), selle asemel, et käsitleda väärtust viidatud teena.

Näiteks:

Link 

Kui klõpsatakse nupul "Link", on tulemus järgmine:

Nagu eespool näha, ei käsitleta brauserit hrefviidatud teena. Selle asemel käsitleb see mõnda JavaScripti koodi, mis algab pärast sõna „javascript:” ja eraldatakse semikoolonitega.

void(0)

Tühine operaator hindab antud väljendeid ja tagastab undefined.

Näiteks:

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

1 + 1hinnatakse, kuid undefinedtagastatakse. Selle kinnitamiseks on siin järgmine näide:

Heading

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

Ülaltoodud koodi tulemus on:

Siin on veel üks näide:

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

Kombineerides javascript:javoid(0)

Mõnikord ei soovi te linki teisele lehele navigeerimiseks ega lehe uuesti laadimiseks. Kasutades javascript:saate käivitada koodi, mis ei muuda praegust lehte.

See koos void(0)vahenditega ei tee midagi - ärge laadige uuesti, ärge navigeerige, ärge käivitage ühtegi koodi.

Näiteks:

Link 

Brauser käsitleb sõna "Link" lingina. Näiteks on see fokuseeritav, kuid see ei liigu uuele lehele.

0on sellele edastatud argument, voidmis ei tee midagi ega tagasta midagi.

JavaScripti koodi (nagu eespool näha) saab voidmeetodile argumentidena edastada . See paneb lingi elemendi käitama mõnda koodi, kuid see säilitab sama lehe.

Näiteks:

Link 

Kui nupul klõpsatakse, on tulemus järgmine:

Kasutajaga voidkäsib see brauseril mitte midagi tagastada (ega tagastada undefined).

Teine javascript:void(0)viitega linkide kasutamise juhtum on see, et mõnikord võib link käivitada taustal mõnda JavaScripti koodi ja navigeerimine võib olla tarbetu. Sel juhul kasutatakse väljendeid argumentidena, millele edastatakse void.

Järeldus

Selles lihtsustatud artiklis oleme õppinud, mis on voidoperaator, kuidas see töötab ja kuidas seda kasutatakse javascript:pseudo-URL-iga hreflinkide atribuutide jaoks.

See tagab, et leht ei navigeeriks teisele lehele ega laadiks klõpsamisel praegust lehte uuesti.