Javascript "this". Miksi ei viitata muuttujaan?

e4e56e4

Miksi käytetään "this" sanaa muuttujan sijasta koodissa? Sama koodi saattaa löytyä muuttujalla ja käyttäen "this" sanaa.

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200)

vs

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)

3

2001

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Turbo-Urpo

      Fiktiivinen tilanne selventää asiaa:

      Naapurissa asuu Kari Karvaperse
      Sinä menet heille kylään, ja haluat imarrella talon asukkaita, sanomalla:
      "Tässä talossa haisee raha"

      Aivan saman asian ajaisi myös jos sanoisit:
      "Kari Karvaperseen talossa haisee raha"

      Mutta, tuo viimmeisin sanonta paikanpäällä olessa olisi hämmentävä, kuitenkin täysin oikea, niinpä antamassasi esimerkissäkin sanotaan "this" = "tässä", vaikka aivan samaa se tarkoittaa sanoa "xmlhttp".

      Kummassakin tapauksessa kuitenkin syntyy epäily että asuuko jossakin toinen "Kari Karvaperse" tai onko olemassa joku globaali muuttuja johon pitää viitata "xmlhttp" nimellä.

      Siispä on selvempää käyttää "this" ja "Tässä" termiä epäilyjen ja mahdollisten sekaannusten välttämiseksi.

      • Turbo-Urpo

        Tähän on vielä hyvä lisätä että itsestään puhuminen kolmannessa persoonassa on m. . .-sairauteen viittaavaa käyttäytymistä. Normaalisti ihminen käyttää ensimäistä persoonaa
        Minä puhuin
        Sinä puhuit
        Hän puhui

        Mutta Kari Karvaperse puhuu:
        "Kali ei halua luokaa"
        Johon Karin äiti vastaa:
        "Äiti antaa piiskaa ellei Kari syö ruokaansa"

        Joten vanhemilta opittuahan se on. Juuri samasta asiastahan tuossa avauksen tehneen kysymyksessäkin on kyse, funktioon tai muuttujaan viitataan kolmannessa persoonassa, joka kyllä toimii ja on ymmärrettävissä, mutta ei hyvä tavan mukaista.


      • Turbo-Urpo
        Turbo-Urpo kirjoitti:

        Tähän on vielä hyvä lisätä että itsestään puhuminen kolmannessa persoonassa on m. . .-sairauteen viittaavaa käyttäytymistä. Normaalisti ihminen käyttää ensimäistä persoonaa
        Minä puhuin
        Sinä puhuit
        Hän puhui

        Mutta Kari Karvaperse puhuu:
        "Kali ei halua luokaa"
        Johon Karin äiti vastaa:
        "Äiti antaa piiskaa ellei Kari syö ruokaansa"

        Joten vanhemilta opittuahan se on. Juuri samasta asiastahan tuossa avauksen tehneen kysymyksessäkin on kyse, funktioon tai muuttujaan viitataan kolmannessa persoonassa, joka kyllä toimii ja on ymmärrettävissä, mutta ei hyvä tavan mukaista.

        Vi. . .u, nyt meni niin moralisoivaan sävyyn, että on vielä pakko huomauttaa, etten minä vitut veisaan hyvän tavan ohjelmoinnista, teen sen niin kuin huvittaa.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mikä on sun mielestä suurin kusetus maailmassa?

      Mikä on sun mielestä suurin kusetus maailmassa?
      Ikävä
      164
      5258
    2. rakastan jotakin

      en uskalla sanoa sitä täällä ääneen
      Ikävä
      11
      4198
    3. Vedonlyöntiä .

      Olen valmis lyömään ison vedon , että homma kaatuu . Jos kerta Sivonen ei lähde mukaan , niin ei tuoho usko kukaan muuka
      Ähtäri
      51
      3675
    4. Mikä on pahinta, mitä kaivatullesi

      pelkäät tapahtuvan? Jos kuolemaa, vakavia sairauksia yms. ei lasketa?
      Ikävä
      103
      2955
    5. Turvaan tulleet lähettävät omia lapsiaan vaaraan - hullua

      MOT-ohjelman jakso ”Loma vaihtui kahleisiin” kertoi, kuinka Suomessa ja muualla Euroopassa asuvat somaliperheet lähettäv
      Maailman menoa
      79
      2678
    6. Hei Antti. Minähän varoitin jo 2 v sitten, ettei sinusta tule pääministeriä, vaikka kuinka

      voittaisit vaalit. Vasurit ovat aina puukottaneet toisiaan selkään, eivät koskaan edestäpäin. Marinistit varsinkin IL t
      6
      2098
    7. Minkä tunteen tunnet

      juuri nyt? ap kiitollisuuden.
      Tunteet
      44
      1465
    8. Uusnatsien ilkivalta Joensuussa jatkuu.

      Saavat mellastaa persujen suojissa miten haluavat. Särkevät ja tuhoavat toisten omaisuutta, tähän on johtanut persujen m
      Joensuu
      12
      1358
    9. Minkä kouluarvosanan (4-10) annat Thank God, sä tulit! sarjalle?

      Katsoitko Thank God, sä tulit!? Uusi viihdeohjelma ei ollut kaikkien makuun, mutta jotkut tykkäsivät. Minkä kouluarvos
      Tv-sarjat
      62
      1234
    10. Päivi Räsänen sai kutsun kongressiin todistajaksi.

      Pystyykö Päivi pysymään totuudessa ja kertomaan kongressille, että raamattu ei ole lakikirja jota pitäisi noudattaa poli
      Maailman menoa
      408
      1219
    Aihe