- Gaming notebook topik
- Tavaszi szél új iPadeket áraszt?
- Nem akármilyen új GeForce jöhet idén
- Melyik tápegységet vegyem?
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- AMD GPU-k jövője - amit tudni vélünk
- Azonnali informatikai kérdések órája
- HTPC (házimozi PC) topik
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Házimozi belépő szinten
-
PROHARDVER!
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
- iPhone topik
- Direct One (műholdas és online TV)
- Autós topik
- Gaming notebook topik
- Tavaszi szél új iPadeket áraszt?
- mefistofeles: Az elhízás nem akaratgyengeség!
- Drón topik
- A fociról könnyedén, egy baráti társaságban
- Nokia N8 - vajon elég lesz-e?
- Nem akármilyen új GeForce jöhet idén
- További aktív témák...
- Eladó Lelit Bianca V2 kávégép
- HP EliteBook 840 G9 i7-1265U 16GB 256GB 14" FHD+ 1 év teljeskörű garancia
- Újszerű állapotú HP Elitebook 850 G8 (11.gen Core I5 16Gb 512Gb) laptopom eladó!
- Eladó ASUS TUF Gaming F15 (TUF507ZV4-LP121W) i7, 24gb ram RTX 4060, gamer laptop!
- Mint az ÚJ bivaly erős MAGYAR HP Zbook Fury G8 (Core I7 11850H 32Gb 512Gb 4Gb Nvidia) laptop eladó!
- Beszámítás! Apple iPad Pro 13 M5 1TB Wifi tablet garanciával hibátlan működéssel
- 217 - Lenovo Legion 7 (16IRX9) - Intel Core i7-14700HX, RTX 4060
- ÚJ könyv: Gloviczki Zoltán - A holnapután iskolája
- HIBÁTLAN iPhone 16 128GB Black-1 ÉV GARANCIA - Kártyafüggetlen, MS4423, 100% Akksi
- Keresünk iPhone 15/15 Plus/15 Pro/15 Pro Max
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest


