-
Fototrend
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
válasz hiperFizikus #9599 üzenetére
Nem csak ennyi, mert veled ellentétben nekünk fingunk sincs, hogy mit jelent az a, b, e1, mfb stb változó név. Megláttam a kódodat, és csak legyintettem...
De majd egyszer rájössz, hogy csak magaddal szúrsz ki az idióta nevezéktanoddal.[ Szerkesztve ]
Én kérek elnézést!
-
hiperFizikus
aktív tag
válasz martonx #9601 üzenetére
Már sztanozsnak is akartam válaszolni, hogy a kedvetekért majd mindent megteszek ♥
Hogy mit jelentenek ? - keveset :
1. a baloldali betűk minőséget, a jobboldali számok db menyiséget .
2. az x, y, z, leggyakrabban a ciklusváltozók .
3. az xa1, y,a1, za1 félék listákat és tömböket .
4. az n számlálót: ; n++ ; n = n + 1 ;
5. az m1, m2, cikusokban stringet fűzök rájuk .
6. c1, c2, c3, c4, c5 sietős dobálózást változókkal, kevésbé fontos sok értékhez
7. e1, e2, e2, e3, e4 amikor sok fontos értékhez részére kellenek
8. az a1, a2, a3, b1, b2, b3 valamelyik kódrészen kezdő értékek részére
*. ilyesmiket ...cm. néha meg nem vagyok tökéletesen következetes velük, mert pl. sietek, mert pl. már fáradt vagyok .
Ez nem igazán nevezéktan, hanem csak a betűszám azonosítókkal villámgyorsan tudok kódot szerkeszteni !
[ Szerkesztve ]
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
Gergello
addikt
Sziasztok !
Egy kis jquery kódban kérném a segítségetek.
Van egy input text mező, amihez csináltam egy kis saját autocomplet funkciót.Működési elve: a szövegmező .on("input" ... eseményére csinálok egy ajax hívást, ami visszakap egy html kódrészletet és ezt kell megjeleníteni.
Helyi teszt szerveren minden tökéletes működött, mert gyors a szerver.
Felraktam az élesre és az a probléma, hogy a néha lassabban jön meg a válasz és ez miatt nem az utolsónak beírt (végső) input mező tartalom alapján kapott eredményt jeleníti meg, hanem az utolsónak befejeződött ajax hívás eredményét.Pl. begépeled, hogy "szerszámkészlet" szépen futnak a hívások, de előfordul, hogy legvégül csak a "szerszámk" keresőszó alapján kapott találatokat jeleníti meg. Hiába látom azt a Chrome Network fülben, hogy az utolsónak küldött ajaxban a "szerszámkészl" adatot küldte el a feldolgozó(válaszadó) résznek.
Szerintetek, hogy oldjam meg ?
Szerintem minden ajax hívásban meg kellene szakítani a korábban indított ugyanilyen hívást. De hogy ? Nagyon köszönöm.Kód:
$('#product_search').on("input", function() {
doSearch();
});
function doSearch() {
$search_string = $('#product_search').val();
if ($search_is_first_submit || (!$search_is_first_submit && $search_string != $last_search_string)) {
$.ajax({
url: 'index.php?route=product/search/searchhint',
type: 'post',
data: 'search=' + $search_string,
dataType: 'json',
success: function(json) {
if (json['success']) {
$('#search-hint').html(json['success_text']);
}
}
});
}
$last_search_string = $search_string;
$search_is_first_submit = false;
}
function showSearchHint() {
doSearch();
$('#search-hint').removeClass('d-none');
}
function hideSearchHint() {
setTimeout(function () {
// Things to do before the focus is out
$('#search-hint').addClass('d-none');
}, 150);
}
[ Szerkesztve ]
-
-
Gergello
addikt
válasz martonx #9604 üzenetére
Találtam egy elég egyszerű megoldást rá. Sorszámozom az ajax hívásokat, az aktuális sorszámot elküldöm a szervernek is. Amikor megérkezik a válasz, az tartalmazza a hívás sorszámát is. Ellenőrzöm, hogy az utolsó sorszámú hívásra jött-e, ha igen, akkor megjelenítem a tartalmát. Kicsit Frédi-Béni megoldásnak hangzik.
Nem tart másodpercekig, mert nem bonyolult a feldolgozó része, valami miatt néha 1-1 hívásra a válasz késett és az borította fel a rendszert. Spinnert ez miatt nem tennék bele, mert csak lassúnak tűnne, pedig gyors valójában.
[ Szerkesztve ]
-
Lokids
addikt
Sziasztok,
Valaki segítsen nekem megérteni JS-ben ez a .reduce() miért /hogyan működik:
const users = [
{ name: 'John', age: 34 },
{ name: 'Amy', age: 20 },
{ name: 'camperCat', age: 10 }
];
const usersObj = users.reduce((obj, user) => {
obj[user.name] = user.age;
return obj;
}, {});
console.log(usersObj);
Pontosabban ez a része az amit nem bírok felfogni:
obj[user.name] = user.age
Ebből hogy jön ki a { John: 34, Amy: 20, camperCat: 10 } eredmény? o.O
Elsőre én azt hinném, hogy mikor a reduce végig lépdel az objecteken a name-nek adná értékül az age értékét.Szóval miért nem {name: 34} az első lépés eredménye.
Tudom, hogy én lenni buta, de az agyam nem képes ezt most felfogni.If you chase two rabbits you will lose them both.
-
disy68
aktív tag
A reduce eredménye egy darab érték, itt egy object.
const usersObj = users.reduce((obj, user) => {
obj[user.name] = user.age;
return obj;
}, {}); <- ez a kiindulási értéke: {} // üres object
A reduce végigiterál a users tömbön. Minden iteráció megkapja az előző által módosított értéket (obj) és az adott elemet a listában (user).obj[user.name] = user.age
;
a fenti módosítja az eredmény objectet, ad neki egy property-t, aminek a neve a user.name lesz és az értéke a user.age
0: {}
1: {"John": 34}
2: {"John": 34, "Amy": 20}
etc..
Érdemes lehet még elolvasni a dokumentációt hozzá.“Yeah, well, you know, that’s just, like, your opinion, man.” — The Dude
-
sztanozs
veterán
obj[user.name] = user.age
ez azt jelenti, hogy hozd letre auser.name
kulcsot azobj
listaban auser.age
ertekkel, vagy frissitsd a meglevo kulcsot ezzel az ertekkel.[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
Lokids
addikt
Köszönöm a magyarázatokat. nagyjából(!) sikerült megértenem, hogyan működik.
Bár még kétlem, hogy magamtól problém nélkül tudnám is alkalmazni.If you chase two rabbits you will lose them both.
-
sztanozs
veterán
-
disy68
aktív tag
még ezt nézd meg, mi az az object literal:
const obj = { key: "value" };
“Yeah, well, you know, that’s just, like, your opinion, man.” — The Dude
-
hiperFizikus
aktív tag
lásd #87
, egy új magyar ABC átírogató programom !A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
hiperFizikus
aktív tag
válasz sztanozs #9596 üzenetére
Most volt csak időm konkrétan kipróbálni, és szuper = OK :
az ...function yM(zM,n,xM){
var y, My, k ;
k= false ; My= xM ;
... -ból -> az ...
Array.prototype.yEval = function (zM,n){
var xM ; xM= this.valueOf() ;
var y, My, k ;
k= false ; My= xM ;
... lett ; és fut, viszi ♥
Nem csak elvi, de gyakorlati kérdés is volt, hogy vigye ! - köszönöm .
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
lanszelot
addikt
Hello,
getTimezoneOffset()
paraméterei érdekelnének, de sehol se találom miket lehet megadni zárójelen belül2 időzöna különbségét szeretném megkapni.
Helytől függetlenül.
Azaz, Angliában, Amerikában, és Mo-on is helyesen írja ki pl Shanghai időzönával való különbséget.Mert ha beírom, hogy DTM +8, az más időzönában nem igaz. -
martonx
veterán
válasz lanszelot #9617 üzenetére
Szerintem erre nem a getTimezoneOffset kell neked, hanem csak egy sima kivonás
A getTimezoneOffset azt adja meg, hogy adott lokál dátum hány perccel tér el UTC időtől.
A példámban pl. magyar gépen futtatva, magyar időzónára 60 percet ad meg, ami korrekt.
Csak ennyit tud, nincsenek paraméterei.
Csináltam egy js fiddle-t: JSFiddle - Code Playground[ Szerkesztve ]
Én kérek elnézést!
-
lanszelot
addikt
válasz martonx #9618 üzenetére
Nagyon szépen köszönöm
Az alap működést azt ismerem. Azt hittem meg lehet paraméterként adni mihez képest viszonyítsa.
A kivonás eszembe jutott, csak szebben szerettem volna megoldani.A dátum-nál nem igazán lehet a paramétereket megtalálni.
pl a "timezone:" paramétert se találtam sehol, pedig azt tudtam, hogy létezik.
Jó pár órám rá ment mire kiagyaltam, hogy is volt.
Mert itt is pl bal oldalon ott van minden dátumhoz tartozó dolog, de paraméterek szinte egyiknél sincsenek feltűntetve. -
lanszelot
addikt
Hello,
Amit szeretnék: 2023 Január 28 Szombat /óra nem kell, se időzóna/
Hogy van-e pont vagy nincs nem érdekel.
Azt tudom, hogy darabonként össze rakom.
De van e rá date object?
.toLocaleDateString('hu-HU') - ez 2023. 01. 28. ezt eredményezi.
tehát ez így nem jó -
Lokids
addikt
Sziasztok!
Megtudja valaki mondani, hogy mi a hiba a functionnel? Nem lép bele az isnan(b) || isnan(b) vizsgálatba.
addTogether(2)([3])function addTogether(...args) {
const [a, b] = args
if (!b) {return function(b){
console.log(b)
if(isNaN(a) || isNaN(b)){
return undefined
}
return a+b
}
}
if(isNaN(a) || isNaN(b)){return undefined
}
return a+b
}
Nem akkor kelle bele lépni, ha a VAGY b nem szám? Mert a b ugye egy array, így az isNaN(b)-nek true-na kell lennie és vissza kéne adnia az undefined eredményt.
[ Szerkesztve ]
If you chase two rabbits you will lose them both.
-
Lokids
addikt
Oké, megvan. Azért, mert az isNaN nem azt mondja meg, hogy szám-e vagy nem.
Bár így eléggé zavaró az elnevezése.Viszont akkor újabb problémám van:
if (arguments.length === 1){
return function(b){
console.log(typeof b)
if(typeof a === "number" && typeof b === "number"){
return a+b
}
return undefined
}
}
Ha egyáltalán nincs 2. argumentum, akkor a typeof b-re azt kapom vissza, hogy [function].
Ennek ellenére nem undefined lesz a visszatérő érték, hanem [function].
Miért?[ Szerkesztve ]
If you chase two rabbits you will lose them both.
-
hiperFizikus
aktív tag
Oh, jaj ♥
Van ez az alakom :var a1, a2,a3, b1, b2, b3 ;
a1, a2, a3 = [b1, b2, b3] ;
Ez nyilván nem működik, de lehet e valami ilyesmi alak, ami működne ?
Azt szeretném, hogy legyen :
a1= b1 ; a2= b2 ; a3= b3 ;A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
dqdb
nagyúr
-
hiperFizikus
aktív tag
Sikerült, ez lett belőle : OK .
, az hogy az a0li is [ ] lista ne zavarjon, mert csak egy közönséges értéket ad meg .
[a0li[2], b0li[3], b0li[0]] = [a0li[2], b0li[3], b0li[0]].RepLace(Chr(6),'°') ;
Ennek ez az a,priori kódja : ajándékba, hogy segítettetek
String.prototype.Replace = function (a2,a3){// csak bedrótozva
var a1; a1= this ;
return a1.replace(new RegExp(a2,'g'),a3)
};
// << >> Replace :
String.prototype.RepLace = function (xc){
var x, b1, a2, a3 ; b1= this ;
for (x=0 ; x < UBound(xc) ; x= x+2){ // ! párba szedő
a2= xc[x] ; a3= xc[x+1] ;
b1 = b1.Replace(a2,a3) ;
}; // for
return b1 ;
};
// << >> RepLace :
Array.prototype.RepLace = function (xc){
var y, xc1 ; xc1= this ;
for (y=0 ; y < UBound(xc1) ; y++){ // csak átutaló
xc1[y]= xc1[y].RepLace(xc) ;
}; // for
return xc1 ;
};
// << >> RepLace :
Lehetne-e ezt a hóbele-vackot egyszerűbb alakra hozni ?
Mit szóltok hozzá ♥
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
hiperFizikus
aktív tag
válasz hiperFizikus #9625 üzenetére
+ javítás, módosítás :
Array.prototype.RepLace = function (xc,a3){
var y, xc1 ; xc1= this ;
if (Array.isArray(xc)){
for (y=0 ; y < UBound(xc1) ; y++){ // csak átutaló
xc1[y]= xc1[y].RepLace(xc) ;
}; // for
return xc1 ;
} else {
for (y=0 ; y < UBound(xc1) ; y++){ // csak átutaló
xc1[y]= xc1[y].Replace(xc,a3) ;
}; // for
return xc1 ;
}; // if_
}; // for_
// << >> RepLace :
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
-
martonx
veterán
válasz nevemfel #9629 üzenetére
Légyszi, ha már konkrét lib-et javasolsz, legalább jót (modern és kicsi, ellentétben az elavult, és hatalmas momentjs-el).
Direkt ezért se akartam konkrét lib-et javasolni, mert csomó alternatíva van. Egy van, amit így 2023-ban már nem szabad használni, az a momentjsDe ha már belementünk, akkor itt van néhány jó alternatíva:
1. Day.js · 2kB JavaScript date utility library - nekem ez jön be legjobban, de kinek melyik.
2. date-fns - modern JavaScript date utility library
3. GitHub - moment/luxon: ⏱ A library for working with dates and times in JSÉn kérek elnézést!
-
hiperFizikus
aktív tag
válasz hiperFizikus #9626 üzenetére
Panaszkodtatok a "nevezzék tanomra", hogy nem beszédes azonosítók .
Nem kötözködni akarok, de ha e kettő közt veszem pl. rövidítéseket, akkor ahhoz hogyan viszonyulnátok ?
pl.; nemzeti_kozponti_bizotsag = 15 ;
->; nkb3 = 42 ;
[ Szerkesztve ]
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
martonx
veterán
válasz hiperFizikus #9634 üzenetére
nemzeti_kozponti_bizottsag - jó változó név, mert beszédes, olvasható. By the way javascriptben ez a, de facto változó nevezéktan szabvány: nemzetiKozpontiBizottság
nkb - szar változónév, mert rajtad kívül senkinek nem mond semmitCase Styles in Coding (camelCase, snake_case, and more) (codingem.com)
No persze, ha csak és kizárólag magadnak kódolsz, akkor bármilyen szar változó neveket használhatsz. Ha tőlünk is vársz segítséget, akkor légyszi legyél ránk is tekintettel.
Én kérek elnézést!
-
nevemfel
senior tag
válasz hiperFizikus #9634 üzenetére
A rövidítések haszontalanok (sőt, egyéni véleményem: kifejezetten károsak).
A fejlesztő jellemzően az ideje 10%-át tölti azzal, hogy kódot gépel, 90%-át meg azzal, hogy "Mi az Úristen folyik itt? Nem értem.". A beszédes változónevek használata rengeteg sok elpazarolt időt takaríthat meg.
Ha valaki a fájlméret miatt szeretné lerövidíteni a programjában használt azonosítók (változók, függvények) neveit, arra ott vannak a különféle javascript minify-, illetve obfuscator eszközök.
[ Szerkesztve ]
Forget your troubles, c'mon get happy
-
Lokids
addikt
Hogy oldanátok meg ezt?
abc (123) jó legyen, de abc 123) ne
(?(?=\()\d{3}\)|\d{3})
Ez nem azt csinálja, hogy ha van "(", akkor (123) legyen a jó, ha nincs akkor pedig csak az 123?
If you chase two rabbits you will lose them both.
-
lanszelot
addikt
Hello,
Tudom off téma, de az apache topik teljesen halott.Mivel a VS Code live server pocsék. Iszonyat sok bug van benne.
Így kénytelen vagyok local servert rakni.
Amire használnám: html, css, js, php
php már a gépemen van
Pár kérdésem volna:
- project-jeim nem c-n vannak, és ne mis gyökérben. De másolgatni nem akarom, mert akkor ugyanaz mintha a serveremre másolgatnám.
Minden kis állítás miatt másolgatni rettenet. Hogy tudom a saát könyvtáram használni?
- apache automatikusan kezeli majd a php-t, vagy ha php , akkor azt a local servert kell használnom?
Semmit se tudok se php /local/ se apache-ról. Php -t youtube alapján feldobtam és ahogy ott mutatták úgy használom. Ezért kérlek lépésenként írjátok le. -
lanszelot
addikt
Ez viszont js kérdés lenne:
array.push -al beteszek egy stringet
["valami"]
ez lesz a tömb
de nekem ez kellene [valami]
idézőjelek nélkül
Ezt hogy tudom megcsinálni? -
-
hiperFizikus
aktív tag
A <canvas> -t nyilván ismeritek .
Ha a js által mindenféléket rajzoltatok a canvas{ernyőre} és már nagy az összevisszaság rajta, akkor jól jönne, ha le tudnám kérdezni a canvas egyes pontjainak állapotát: fekete-fehér, színek, átlátszóság .
Lehetséges ilyen lekérdezés ?
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
-
Lokids
addikt
Hogyan kell arrayon belül arrayra bontani az adatokat?
myArr = [1,2,a,b,a2,b3] => [[1,2],[a,b],[a2,b3]] legyen az eredmény?
Már csináltam ilyent, de most ha lelőnének se jut eszembe hogyan.If you chase two rabbits you will lose them both.
-
disy68
aktív tag
ha már téma volt nemrég a reduce függvény, itt egy példa azzal is
const perChunk = 2 // items per chunk
const inputArray = ['a','b','c','d','e']
const result = inputArray.reduce((resultArray, item, index) => {
const chunkIndex = Math.floor(index/perChunk)
if(!resultArray[chunkIndex]) {
resultArray[chunkIndex] = [] // start a new chunk
}
resultArray[chunkIndex].push(item)
return resultArray
}, [])[ Szerkesztve ]
“Yeah, well, you know, that’s just, like, your opinion, man.” — The Dude
Új hozzászólás Aktív témák
- Vezetékes FÜLhallgatók
- Léghűtés topik
- Érkezik Magyarországa az LG szuper dizájnos hordozható projektora
- World of Tanks - MMO
- Otthoni hálózat és internet megosztás
- Ukrajnai háború
- Stellar Blade
- AMD off topik: VGA, CPU, APU és minden, ami AMD
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Így építsd a billentyűzeted!
- További aktív témák...
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: Ozeki Kft.
Város: Debrecen