- bitpork: Augusztus 2- szombat jelen állás szerint.
- Luck Dragon: Asszociációs játék. :)
- eBay-es kütyük kis pénzért
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- Geri Bátyó: B550 szűk keresztmetszet, de mi és miért?
- Yutani: Yutani Retró Hangkártyái: AdMOS AdWave 32
- user2: Kia Ceed Gold 160 1.5 T-GDI MY2024
- Kempingezés és sátrazás
- gerner1
-
LOGOUT
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
-
martonx
veterán
Kérdés, hogy hova rakod a console-t?
Egyébként továbbra is így jsfiddle-el kellene szemléltetni a kérdést. -
Üdvözlet!
Volt nemrég itt a fórumon téma, hogy a JavaScript mindössze 1 szálon fut.
Néha ezt a tényt be is bizonyítja. Mégis érdekes, hogy ha van egy ilyen kódom:let value = getValue();
function getValue() {
return true;
}
myFunction(value);
.
.
.
.
function myFunction(x) {
//
}...akkor a console hibát dob vissza, miszerint: '
x is not definied
'.Kérdem én: Ha 1 szálon fut, akkor követnie kellene a műveleti sorrendet (fentről lefelé). Ilyen esetben miért nem történik meg? Nyílván
getValue();
nem csak egy egysoros kód, hanem egy feltételrendszer. Mégis a program az előtt futtatnámyFunction(x);
-et, mielőtt visszakapnávalue
agetValue();
értékét.
Ez az én olvasatomban azt jelentené, hogy párhuzamosan fut két function, és ha nincs visszatérő érték az egyikből addig, amíg a másik el nem jut arra a pontra, hogy használná, akkor hiba lesz az eredmény... -
sztanozs
veterán
válasz
hiperFizikus #9891 üzenetére
Erre valo a debugger - hogy kordaban tartsd a bokrot (es a valtozokat).
-
martonx
veterán
válasz
hiperFizikus #9888 üzenetére
Kezded már kapizsgálni, miért erőltetem az olvasható kód írást?
-
sztanozs
veterán
válasz
hiperFizikus #9888 üzenetére
Hat igen - az implicit konverzio (illetve az implicit feltetel) nem nagy segitseg a hibak megtalalasanal.
-
-
sztanozs
veterán
válasz
hiperFizikus #9882 üzenetére
Es mi volt vegul a hiba (hogy tanuljunk belole)?
Egy pontosvesszo maradt el, vagy egy bezaro zarojellel volt tobb/kevesebb? -
válasz
hiperFizikus #9885 üzenetére
Beszélgess a ChatGPT-vel. Legalább nem fogsz unatkozni és azonnal válaszol. Elvileg sosem fáj a feje...
-
Bzozoo
tag
válasz
hiperFizikus #9882 üzenetére
Az egyik 8-ast fordítva írtad 😃
-
martonx
veterán
válasz
hiperFizikus #9882 üzenetére
Sajnos nem tudunk jobb linket, bármit is jelentsen a link a te szóhasználatodban.
-
hiperFizikus
senior tag
Tudtok valami jobb linket a programban{szoftverben} való hibakeresgéléshez, mert egész nap csak egy hibát kerestem ? Mire megtaláltam, már örülni sem tudtam neki !
-
Bzozoo
tag
Értem. Azt hittem, hogy valamilyen éles project része.
A hiba megértéséhez mutatok még egy kódot. Itt láthatod, hogy a counter 10 marad, tehát a setInterval indításakor a counter érték "ég" bele a függvénybe, tehát a függvény nem a counter aktuális értékével fut, hanem a régivel
https://snack.expo.dev/@bzozoo/countdown-useeffect-problem
Itt egy lehetséges jobb megoldás useRef használatával. Itt a counting függvénybe már mindig az aktuális érték kerül:
https://snack.expo.dev/@bzozoo/countdown -
Bzozoo
tag
Nézd meg console.log-gal, hogy mi történik az első esetben és a második esetben
https://snack.expo.dev/@bzozoo/second
https://snack.expo.dev/@bzozoo/start-and-secondAmúgy nem tudom, hogy mire kéne ez neked, de biztos, hogy másként is meg lehetne oldani.
-
Lokids
addikt
vsCode.
Kicsit átírtam, most így néz ki, de a probléma, hogy figyelmen kívül hagyja az if-et, az megmaradt:
const [clocks, setClocks] = useState({
breakCount: 5,
sessionCount: 25,
})
const [szunet, setSzunet] = useState(true)
const [start, setStart] = useState(false)
const [secound, setSecound] = useState(25*60)
useEffect(()=> {
let interval = null;
if (start){
interval = setInterval(() => {
if (secound === 0){
if (szunet){
setSecound(clocks.breakCount * 60)
setSzunet(!szunet)
} else {
setSecound(clocks.sessionCount * 60);
setSzunet(!szunet)
}
} else if (secound > 0) {
setSecound((prev) => prev - 1)
}
},100)
}else{
clearInterval(interval)
}
return () => clearInterval(interval)
}, [start])
Az if (secound ===0) nem teljesül 1x sem. Pedig eléri a 0-át. Majd utána -1, -2 stb...
-
Lokids
addikt
Megtudja valaki mondani mi a gond ezzel a useEffectel?
Gombnyomás a start-ot true/false-ra állítja.
Szóval start gomb true-ra állít, onnantól futnia kéne, de!beállítja a másodpercet 59-re, de onnantól másodpercenként 1-et von le a minutes-ből. Pedig akkor a secounds már !==0 szóval nem kéne belépnie abba az if-be.
useEffect(()=> {
let interval = null;
if (start){
interval = setInterval(() => {
if (secounds === 0) {
if(minutes !== 0){
setSecounds(59);
setMinutes((perc) => perc-1)
} else {
let minut = ticking ? minutes : clocks.breakCount;
setMinutes(minut)
setSecounds(0)
setTicking(!ticking)
}
}else{
setSecounds((ms) => ms - 1)
}
},1000)
}else{
clearInterval(interval)
}
return () => clearInterval(interval)
}, [start])
-
-
Úgy tűnik, sikerült megoldani. A trükk az volt, hogy a fetchek elé kellett a return, ill. egy globál
promises
változóba összegyűjtöttem agetDiscussion
visszatérési értékeit. Aztán még kellett egyPromise.all()
amain
függvénybe.async function main() {
await getTodos();
Promise.all(promises).finally(() => {
if (success) {
if (1 === table.rows.length) {
printMsg("OK");
}
} else {
printMsg("ERROR");
}
});
} -
sztanozs
veterán
válasz
hiperFizikus #9865 üzenetére
pl npmjs.com, de githubon is lehet JS-only kodtarat csinalni.
-
sztanozs
veterán
válasz
hiperFizikus #9860 üzenetére
ez egy sima szamlalo (Counter), megosztasra meg ott a github. Csinalsz egy acountot, es az osszes publikus kododat meg tudod osztani. Mivel van egy csomo bot ami az osszes github repot lementi, igy akar ezek az agymenesek is beszivaroghatnak valami nagyobb kodbazisba (foleg, a valami feleszu AI rakja ossze a kodot).
-
martonx
veterán
válasz
hiperFizikus #9860 üzenetére
Ezeket mi magunk írjuk ilyenkor.
-
hiperFizikus
senior tag
Jaj, mit értetlenkedsz ...
Ez ni : Körülbelül így néz ki.
És ez ni:
const timer = {
default: 0,
get() {
return this.default;
},
increase() {
this.default += 1;
...stb.
-
-
Bzozoo
tag
válasz
hiperFizikus #9853 üzenetére
Hogy milyen alprogram minta?
-
válasz
hiperFizikus #9855 üzenetére
Az a probléma, hogy asyncnál semmilyen változós megoldás nem lesz jó, mert előbb értékelődik ki a végén, mint ahogy az értékadás megtörténik.
-
hiperFizikus
senior tag
Nem vagyok járatos a témádban, de hátha el lehetne intézni 1 logikai változóval : legyen a neve BL1 a boolean után rövidítve . Ilyesmit gyakran használok .
let BL1 ; BL1= true ; // vagy false, ahogy alkalmasabb neked
listád eleje/:
ág
BL1= valami ;
ág
BL1= valami ;
ág
BL1= valami ;
...stb.utolsó ágad
if (BL1){}; // if_
/: listád vége .:
-
Sziasztok, segítsetek kérlek, mert már a hajamat tépem ettől az async témától. Egy egyszerű html oldalat akarok csinálni, ami gitlab API lekérdezéseket csinál. Annyi a cél, hogy listázza a merge requesteket. Ha bármi hiba van, akkor a táblázat végére írja ki, hogy ERROR, ha meg nincs semmi megjeleníthető, akkor OK-t. A probléma az, hogy a fetch miatt gyakorlatilag a kód végigcsorog mindenen, és előbb kezelődnek le a végső esetek, mint ahogy maga az API lekérdezés megtörténik.
Sikerült olyan megoldást találnom, amiben mindenhova odaírom, hogy await, és akkor jó, de ez gondolom nem optimális, mert így tippre az összes hálózati lekérdezés szekvenciálisan fut le, ami meg lassú lesz.
Csatoltam a működő minimál megoldást. Sajna kell a mappastruktúra, szimulálandó a szervert, szóval csak onedrive linket tudok adni egy zip-re: [link]
Tehát összegezve: azt szeretném, hogy minden async legyen, kivéve a végső OK-ERROR kiíratást, ill. hogy valami értelmesebb módon kellene megoldani a hibakezelést is.
-
Bzozoo
tag
válasz
lanszelot #9845 üzenetére
Körülbelül így néz ki.
A kódot ide is beteszem, ha esetleg a link eltörik egyszer:const timer = {
default: 0,
get() {
return this.default;
},
increase() {
this.default += 1;
},
reset() {
this.default = 0;
}
};
(() => {
render(timer.get());
document.addEventListener("click", handleButtons);
})();
function handleButtons(event) {
switch (event.target.id) {
case "startbutton":
handler.start();
break;
case "stopbutton":
handler.stop();
break;
case "resetbutton":
reset();
break;
}
}
const handler = {
interval: null,
start() {
if (this.interval) {
clearInterval(this.interval);
this.interval = null;
}
this.interval = setInterval(flow, 1000);
},
stop() {
clearInterval(this.interval);
this.interval = null;
}
};
function TimerTemplate({ hours = "00", minutes = "00", seconds = "00" }) {
return `${hours}h:${minutes}m:${seconds}s`;
}
function timeConverter(time = 0) {
const date = new Date(time * 1000).toISOString();
const tsring = date.substr(11, 8);
const [hours, minutes, seconds] = tsring.split(":");
return { hours, minutes, seconds };
}
function render(time) {
app.innerHTML = TimerTemplate(timeConverter(time));
}
function flow() {
timer.increase();
render(timer.get());
}
function reset() {
timer.reset();
render();
}
-
nevemfel
senior tag
válasz
lanszelot #9845 üzenetére
Html gombot onclick eventtel sokkal jobb kikérni
Most épp úgy teszek, mintha ezt a mondatot nem is láttam volna. Mindenkinek jobb lesz így.
Egyébként van ebben valami, de hogy "sokkal" jobb lenne, azzal vitatkoznék. Illetve attól függ, mit értesz az alatt, hogy "sokkal jobb"...
-
hiperFizikus
senior tag
-
nevemfel
senior tag
-
lanszelot
addikt
Először is nagyon szépen köszönöm a segítséget mindenkinek
Az globális változó. Bent is érvényes. Gondolom azt akartad írni, hogy az értéke nem érvényes bent.
Igaz, el bambáztamZedz: az nagyon rossz példa.
Html gombot onclick eventtel sokkal jobb kikérni
Illetve a js borzasztó xarul kezeli a dátumot.
Ahol lehet kerülni kell, mint a tüzes vasat.Bzozoo : majd utána nézek, hogy az hogy van.
-
Zedz
addikt
válasz
lanszelot #9841 üzenetére
Possible solution.
ChatGPT generalta, de gyors atfutas utan szerintem ebbe az iranyba kellene neked is menned. -
lanszelot
addikt
Hello,
Miért végtelet a loop?
Miért nem fut be az "if"-be?
példa -
Zedz
addikt
válasz
hiperFizikus #9839 üzenetére
Igen.
-
Zedz
addikt
válasz
hiperFizikus #9837 üzenetére
Nem kellenek az átlinkelések sem, köszönjük.
-
hiperFizikus
senior tag
lásd #5
, elszomorítottatok -
nevemfel
senior tag
Rég jártam erre, de látom, hogy a topik színvonala határozottan tovább romlott. Ezt a gigantikus foshalmot, ami itt van, elképesztő...
-
válasz
hiperFizikus #9834 üzenetére
Pont úgy lehet, ahogy leírtad.
Te ki szoktad próbálni, mielőtt leírod kérdésként az elméleted? -
hiperFizikus
senior tag
Most ezen mérgelődök . Rá ment egy napom feleslegesen, amíg rájöttem e hibámra :
egy szokásos a0.Replace() után
(a0 == a00)
-> false : "35 a c - a - c a c - a -12"egy szokásos a0.Repla() után
(""+a0 == ""+a00
) -> true : "35 a c - a - c a c - a -12"
cm. persze a textarea-ba idézőjelek nélkül lett beírva, onnan lett betöltve . .
Mind két sztring ugyanabból a karakterekből áll, ezt ellenőriztem egy ciklusba tett függvénnyel: **.charCodeAt(0) .
kb. ( a0.charCodeAt(0)ésCiklus == a00.charCodeAt(0)ésCiklus ) : true
, csak ciklusba építve volt .
Meg lehetne ezt elegánsabban is csinálni ? - mint így :
(""+a0 == ""+a00)
.
Csak kíváncsi vagyok, mert ha nem nagyon, akkor muszáj evvel folytatom .
-
Bzozoo
tag
Mr. Fizikus, Inkább tegyél valami hasznosat a fejlesztőkért. Például írj npm csomagokat, amit használ is valaki 🙂
-
sztanozs
veterán
válasz
hiperFizikus #9825 üzenetére
Szerintem ennek a valasznak az eg vilagon semmi ertelme nincs.
A kodsorok szama semmilyen indikativ erovel nem bir.És a szgépen helyesen lefutó kód menyisége minősíti a programozót !
Szerintem a szgepen helyesen lefuto kod minosege minositi a programozot... -
sztanozs
veterán
válasz
hiperFizikus #9821 üzenetére
Mondjuk meg igy evek multan sem ertem miert "oldal"-ban adod meg a kodhossz-t, mintha lenne annak barmi ertelme, hany oldal leporellora nyomtatod ki (remelem tenyleg nem nyomtatod ki)...
Altalaban kodsorra (vagy ritkabban karakterszamra) szoktak szamolni - de csak akkor, ha szamlazas szempontjabol erdekes (pl code review eseten). Egyebkent meg senkit nem erdekel, mekkora a kod. -
hiperFizikus
senior tag
Rendben, de akkor a többi bagolynak is mond meg, hogy ne tegyenek olyan utalásokat itten, amiről úgy gondolhatom, hogy arra a "másik topicommal" kapcsolatos ! Mert én mindig válaszolok annak, aki szól felém .
De fenntartom a jogot, hogy a "lásd **" címkémet néha ide betehessem ...
-
Zedz
addikt
válasz
hiperFizikus #9821 üzenetére
Nem várunk itt semmire. Legközelebb ha Javascripttel kapcsolatban van kérdésed akkor tedd fel, a saját hobbidnak pedig ott van a dedikált fórum.
-
hiperFizikus
senior tag
Ez az öregek és a fiatalok harca, ahol az öregeknek le van a fiataloknak meg fel van !
240 oldalnyi és a szgépen gond nélkül lefut . Várnotok kell rá még egy kicsit, mert eddig sokszor borult az időterve ,
-
martonx
veterán
És ha kiderül, hogy az egy halva született nyelvhez méltóan egy halott topik?
Szerintem ilyen esetben a legbiztosabb módszer, ha hiperfizikus magával vitázna, és magával beszélné meg ezeket a dolgokat, mint egy átlag szanatórium körüli sétánál szokta. Külön javaslom a hangos vitát, azok sokkal eredményesebbek, ne csak úgy fejben, esetleg magában motyogva játszódjon le a vita. -
Zedz
addikt
válasz
hiperFizikus #9817 üzenetére
Oksa, akkor saját topikjában vitázz róla. Ha Javascripttel kapcsolatban van kérdésed az ide tartozik. Más nem nagyon.
-
hiperFizikus
senior tag
válasz
mr.nagy #9816 üzenetére
lásd #2
, félidőA Lolita kód JavaScript alapon van megcsinálva . Úgy kell értenetek, hogy: [ html + JS + PHP ++ Lolita kód ] .
Hogy mennyire önálló nyelv ? : Hát a program váza kicsi, amire rengeteg functiont lehet bekötni, de ha akarod, akkor kevés functiont kötöl hozzá csak .
Nem rajtam(!) múlik, hogy a Lolita topicban vitázunk róla tovább ...
-
válasz
hiperFizikus #9812 üzenetére
Meg miért nem éred be a könnyen hozzáférhető karakterekkel? Nincs már így is eléggé elbonyolítva mindened?
-
Zedz
addikt
válasz
hiperFizikus #9812 üzenetére
Sorry, de ez hogy jön a Javascripthez? A témád már szerintem nem ide tartozik.
-
hiperFizikus
senior tag
Keresek 1 db alkalmas karaktert :
, mint ahogy az ( ellenkezője az ), és az { ellenkezője az }
, úgy mi az ellenkezője a § paragrafus jelnek, a ¶ jel kivételével, persze ezek nem zárójelek ?
Illetve mely karaktert látnátok szívesebben a § paragrafus jel ellenkezőjének ?
-
Gyick
őstag
Üdv!
Nem találtam angularos topikot ezért ide irom hátha tudja valaki.
::ng-deep helyettt van valami új alternativa? Ez ugye deprecated lett
ViewEncapsulation.None-t nem akarok használni -
Zedz
addikt
válasz
hiperFizikus #9807 üzenetére
A VSCode egy IDE.
-
válasz
hiperFizikus #9804 üzenetére
Nem. Fejlesztői környezet az az interfész, amiben megírhatod a programjaidat. Ez lehet egy jegyzettömb is, de lehet az általad belinkelt VSCode is.
Az API jelentése is ez. De az API nem egyenlő egy programozási nyelvvel.
-
válasz
hiperFizikus #9803 üzenetére
...a lolita kódban írt programodat pedig akár pénzért is árulhatod...
Mert minden mást csak crypto-valutáért vagy két kecskéért?
...már azért is, mert a Lolita programnyelv csak egy váz, amire te olyan és úgy rakod az alprogramjaidat, ahogyan csak akarod...
Mint minden feljesztőkörnyezet?
-
hiperFizikus
senior tag
Az nem baj, hogy a projektedet a Lolita kódban kezdted el felépíteni, mert :
1. a projektedhez úgy is hosszú idő kellesz
2. közben remélhetőleg készen lesz a kifejezések is hozzá, amit nagyrészt a közre nem adott még befejezetlen Teener kódomból vesszek át
3. a visszamenőleges kompatibilitás úgy van, hogy például amikor most a régi Teener kódomból hozom át a Lolita kódba a kifejezésekhez tartozó function -okat, akkor csak csekély változtatást kell csinálnom, amik könnyűek és ha méretes a program, akkor 1-2 nap alatt letudható .
4. breaking change: a részemről ingyenes és feltétel nélküli . a lolita kódban írt programodat pedig akár pénzért is árulhatod, már azért is, mert a Lolita programnyelv csak egy váz, amire te olyan és úgy rakod az alprogramjaidat, ahogyan csak akarod, beleértve, hogy az előre deklarált alprogramjaim eltávolítását is ♥
5. előfordulhat hogy a Lolita kód vázán egy kicsit igazítanod kellesz, hogy az neked jobban megfeleljen: ezt nyugodtan megteheted.
A kérdéseitekre továbbra is szívesen fogok válaszolni !
-
válasz
hiperFizikus #9798 üzenetére
Azt azért tudod ugye, hogy a belinkelt programozási nyelv az valójában nem egy programozási nyelv? Az csak egy ingyenes fejlesztő környezet…
-
Zedz
addikt
válasz
hiperFizikus #9800 üzenetére
Az baj, mert én már az idei nagy céges projektet abban kezdtem el felépíteni. Lesz breaking change? Backward compatibility?
Új hozzászólás Aktív témák
Hirdetés
- Hibátlan Apple iPhone 15 Pro - Kártyafüggetlen - 128GB Fekete Titán (87% Akku)
- Apple iPhone 14 Pro, Kártyafüggetlen, 1 Év Garanciával
- Xiaomi Redmi 12 Pro 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- Xiaomi Redmi Note 11 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- HP Probook 640 G2 (14/i3-G6/8GB/256SSD/Magyar/Win11) - Szép!
- Realme 8i 64GB / Normál állapotban / 12 hónap jótállással
- REFURBISHED és ÚJ - Lenovo ThinkPad 40AS USB-C docking station (akár 3x4K felbontás)
- iKing.Hu - Apple 16 Pro Max - Natural Titanium - Új, kipróbált
- Bomba ár! HP ZBook 15 Studio G3 - Intel Xeon I 32GB I 512SSD I 15,6" FHD I Nvidia I Cam I W10 I Gar
- 130+131+132+133 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4080
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest