MediaWiki-diskusjon:Gadget-commons-text-as-overlay.js

Sideinnholdet støttes ikke på andre språk.
Fra Wikipedia, den frie encyklopedi

Sjekk av tilstedeværelse av data[rediger kilde]

I forbindelse med debugging av en annen funksjon så jeg at denne testen feilet i hvert fall i Chrome:

if (data.query.pages['-1']['imageinfo'] === null) {

Så jeg endret den til

if (typeof data.query.pages['-1']['imageinfo'] === 'undefined') {

som ser ut til fungere bedre i Chrome i hvert fall. Stigmj (diskusjon) 20. aug. 2015 kl. 12:19 (CEST)[svar]

Datatypen null er en av de seks primitivene i Javascript, så er ikke sikekr på hvorfor du har fått feil i Chrome. Vanligvis forsøker jeg å unngå typeof for bruk av den medfører strengsammenløigning, som er en nokså tungvint måte å gjøre en sammenligning. Muligens får denne typen undefined (ikke navnet men typen) og da vil testen feile. Såvidt jeg husker så vil dataene da være feil kodet, for utelatte objekter skal være null. Fordi det er et objekt som er forventet så tror jeg testen kan byttes med double equality, da vil null og undefined være det samme. det er en god del steder hvor double equality og triple equality ikke gir det samme resultatet, og hvor double equality faktisk er det riktige valget. — Jeblad 20. aug. 2015 kl. 19:14 (CEST)[svar]