Hirdetés
- Realme GT Master Edition - mestermunka
- Telekom mobilszolgáltatások
- Kezünkben a OnePlus 15 és az Oppo Find X9-ek
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- „Új mérce az Android világában” – Kezünkben a Vivo X300 és X300 Pro
- Vége a dalnak: leállt az iPhone Air gyártása
- iPhone topik
- Amazfit Helio Strap – képernyőmentesen
- Miért fárad gyorsabban az iPhone akku, mint az androidos?
- Google Pixel topik
-
Mobilarena
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Jim-Y
veterán
Szia
1: ... = Array; Ehelyett inkabb ... = [] az ajanlott. [link]
2: ne tegyel semmit kulon fuggvenybe, ahogy fordfairlane is irta, a closure nem tartalmazza az i valtozodat, itt egy (ROSSZ) pelda, ez tortenik most a kododban.
http://jsfiddle.net/Jim_Y/6vy2x7Lo/1/
Latszik, hogy 10x "10" irodik ki a kepernyore, tehat ha lebontjuk, akkor
ctx.drawImage(imageObj[10], b, 0, a, 1080);
ctx.drawImage(imageObj[10], b, 0, a, 1080);
ctx.drawImage(imageObj[10], b, 0, a, 1080);
ctx.drawImage(imageObj[10], b, 0, a, 1080);
...stb tortenikEz azert van, mert az onload fuggveny egy closure-t kepez az ot korulolelo fuggvennyel, ami azt jelenti, hogy amikor az onload fv. lefut, akkor mindig megnezni a runtime, hogy az aktualis kontextusban mi az i valtozo erteke. Mivel az onload aszinkron, ezert amikor azok lefutnak, addigra a ciklus mar vegzett, es az i ciklusvaltozo erteket 10-re novelte. Abban a pillanatban ahogy az onload lookup-olja az i-t, az mar 10-es ertekkel szerepel a kontextusban. Ezert lesz 10x"10" kiirva a konzolra.
Ennek megoldasa, egy uj Execution Context (~ uj variable environment, ~closure) letrehozasaval orvosolhato, amiben az i valtozo mindig az eppen aktualis ertekre lesz beallitva, igy amikor az onload (lookup i) tortenik, akkor az aktualis environment context-ben az i jo ertekkel fog szerepelni.
KetHarom pelda:1: http://jsfiddle.net/Jim_Y/6vy2x7Lo/2/ reading Function.prototype.bind
2: http://jsfiddle.net/Jim_Y/6vy2x7Lo/3/ reading closures
3: http://jsfiddle.net/Jim_Y/6vy2x7Lo/4/ reading IIFE3: Az onload aszinkron muvelet, ami a ciklus lefutasa utan fog csak meghivodni.
Itt egy szemlelteto pelda http://jsfiddle.net/Jim_Y/LsuLL7dg/1/
A kodban a setTimeout az onload-ot szemlelteti. Latszik, hogy amit azon kivul csinalsz, az elobb fut le, mint amit azon belul.
Udv
Új hozzászólás Aktív témák
- Asztali PC-s teljesítményt ígér az AYANEO közelgő kézikonzolja
- Gyúrósok ide!
- MKV szerkesztés (mkvmerge gui, stb)
- Lenovo Legion Go: a legsokoldalúbb kézikonzol
- Mibe tegyem a megtakarításaimat?
- Okos Otthon / Smart Home
- Milyen autót vegyek?
- Realme GT Master Edition - mestermunka
- Milyen billentyűzetet vegyek?
- Telekom mobilszolgáltatások
- További aktív témák...
- Rode WIGO2.5 (Bontatlan)
- újszerű 15 hüvelykes MacBook Air M3 16GB 256GB silver ezüst Apple magyar 3 év garancia
- szinte új iPad (A16) (11. generációs) Wi Fi 128GB silver ezüst Apple garancia ajándék tok
- Gigabyte Gaming A16 CVHI3HU894SD (Bontatlan)
- Samsung Fold 5, gyöngyházfehér színben, szép állapotban!
- GYÖNYÖRŰ iPhone 13 128GB Starlight- 1 ÉV GARANCIA, Kártyafüggetlen,MS3435
- Honor 400 Lite / 8/256GB / Kártyafüggetlen / 12Hó Garancia
- Xiaomi Redmi Note 11 Pro / 6/128GB / Kártyafüggetlen / 12Hó Garancia
- Azonnali készpénzes nVidia RTX 3000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
- GYÖNYÖRŰ iPhone 12 mini 128GB Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3326, 94% Akkumulátor
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő


