- iPhone topik
- Apple Watch
- A hagyományos (nem okos-) telefonok jelene és jövője
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Fotók, videók mobillal
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Android alkalmazások - szoftver kibeszélő topik
- VoLTE/VoWiFi
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
-
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
-
topjoyy
tag
"- Oké, hogy valami online tutorialt követsz, de inline esemény kezelőket használni már 5 éve is deprecated volt. Adj egy id-t a gombnak és aggassz rá megfelelő eseményvezérlőt."
Valójában én a w3schools-ról tanulok, de ha azt mondod, hogy elavult az a módszer, akkor megnéznék más oldalt is.
"Megj: a te példáddal csak úgy simán nem lehet megoldani a stílust, mindenképp kell egy DOM elem ami tartalmazza a tömb egy aktuális elemét, és arra a DOM elemere már lehet stílust tenni."
Mit kell tudnom a DOM-ról?
-
tick
aktív tag
Csak egy dummy. De a valós projectben sem sokkal durvább. Még csak barátkozom az angularral, a directive részét csak összeollóztam. Nagyon szívesen fogadok bármi javaslatot
Lényegében egy nagy táblázaton dolgozom ami egy api-ból húz ki adatokat. (ng-repeat) Illetve 3 oszlopot lehet is szerkeszteni (ng-model, contenteditable) Majd a végén el is lehet menteni.
Eddig igazából működik is a dolog, az egyik oszlopra próbálok még jquery autocomplete-et varázsolni, jsfiddle-ben működik, élesben nem akar semmit csinálni és errort sem dob
Feltételezem az autocomplete és a directive ütik egymást az eventekkel -
tick
aktív tag
mind.blown.
Nem tudom hogy lehetséges hogy ennyi idő után még csak most találkoztam ezzel. De tetszik hogy folyamatosan új és új dolgokkal tud meglepni ez a nyelv.angular.copy($scope.arr)
szépen teszi a dolgát, köszönöm!JSON.parse(JSON.stringify($scope.arr))
szintén egy megoldás, bár kevésbé szép -
Zedz
addikt
Na, lényeg a lényeg ott van a hiba hogy a num nevű változót próbálod behívni a modulból holott lel-ként exportáltad.
Közben javítottam mert már próbáltam mindent, de nem ez a baj.
Igazából most kicsit megkavartál ezzel a prod és dev móddal, nem igazán értem, hogy miért ne kellene bundling dev módban?Lehet én gondoltam túl ezt a Babel modulok dolgot, az a kép élt bennem, hogy mindent elintéz a Babel, de a példa kódodban pl ilyeneket használsz: jspm_packages.
-
syC
addikt
Nem, tényleg nem erre gondotam, de köszönöm az építőjellegűt.
(#6016) martonx: nem kell semmi komolyra gondolni, sima window.trigger('resize') dologról van szó és retinás gépen nem történik semmi. Adalék: a jquery ősrégi 1.4.3-mas (sajnos ez adott, így is noconflictolunk), lehet ez zavar be. Mindegy végülis, csak kicsit furcsa ez a hiba.
-
Speeedfire
félisten
Az őszi webconf-on még azt mondták, hogy prod-ba nem igazán érdemes használni, max előre forgatva.
Hát a fene tudja, ez a projekt szerintem már kifut így, max a következő.Nem vagyok nagy js-es, időről időre mindig próbálok valamit magamra szedni. Viszont most a játék fejlesztés miatt nagyon kellett ez az extends. Viszont frankón megy.
-
Jim-Y
veterán
Na, de csak, hogy legyen ES6-os példa is
-
Speeedfire
félisten
Egy kis html5 játékon dolgozok phaser motorral. A játékban x időközönként feljönnek ikonok amiket ha felvesz a játékos akkor plusz élet vagy fegyvert kap (legalábbis jelenleg, de ezt bővíteném). Fegyverből is van 11 féle.
A lényeg az lenne, hogy amikor egy ilyen ikont feldobok, akkor 30% valószínűséggel legyen élet, a maradék 70%-ban pedig fegyver. Jelenleg csak kiveszem a helperTypes tömbből az egyik elemet és abból lesz az ikon. Vagy fegyver vagy élet. Ezt a Helper osztály konstruktora tovább dolgozza. Kb ennyi lenne a lényeg. De nem tudom a 30/70-et hogy tudnám megoldani.this.helperTypes = [
'gun', 'healt'
];
------------------------------------
addHelper: function () {
if (this.game.time.now > this.nextHelper) {
this.nextHelper = this.game.time.now + this.helperRate;
var type = game.rnd.integerInRange(0,this.helperTypes.length);
this.helpers.push(new Helper(this.countHelper, game, this.player, this.helperTypes[type]));
this.countHelper++;
}
},
------------------------------------
var Helper = function (index, game, player, type) {
var x = game.rnd.integerInRange(game.width/2,game.width-50);
var y = game.rnd.integerInRange(50,game.height-50);
this.game = game;
this.player = player;
this.type = type;
this.helper = game.add.sprite(x, y, type);
this.helper.anchor.set(0.5);
this.helper.name = index.toString();
game.physics.enable(this.helper, Phaser.Physics.ARCADE);
this.helper.scale.setTo(0.25, 0.25);
this.helper.outOfBoundsKill = true;
this.helper.checkWorldBounds = true;
this.helper.body.immovable = false;
game.physics.arcade.velocityFromRotation(this.helper.rotation, -100, this.helper.body.velocity);
};
Helper.prototype = Object.create(Phaser.Sprite.prototype);
Helper.prototype.constructor = Helper;
Helper.prototype.update = function () {
//todo
};
Helper.prototype.useIt = function(gameObj) {
switch(this.type) {
case 'gun':
var index = this.game.rnd.integerInRange(1,9);
gameObj.setWeapon(index);
break;
case 'healt':
var index = this.game.rnd.integerInRange(1,5);
gameObj.healt += index * 10;
break;
default:
//todo
break;
}
};
sztanozs:
Csak gyors összedobtam a példákat, nem figyeltem, hogy pontosan jó-e.Szerk.: Köszi, bár nem tudom, hogy most akkor ez kell-e számomra vagy sem.
-
Karma
félisten
Elég jó kulcsszavakkal kerestél szerintem, nem tudom miért nem találtad meg a kulcsrakész megoldást ("Brute Force Protection" szakasz).
-
martonx
veterán
Kérdés, hogy ez mire kell neked? Ha DDoS elleni védelemnek, akkor arra léteznek speciális tűzfalak, amik kenik-vágják a request limiteket.
Ha csak hülye user elleni védelemnek, akkor elég böngészőben js oldalon lekezelni, hogy fizikailag ne tudjon X-szer rányomni a gombra. -
a2d2
addikt
Na sikerült végre. Eszembe jutott egy marha egyszerű ötlet és szerencsére működött.
Ennyi volt az egész:JS első fele
if koordinátákat kell számolni
{
function getLatLng(callback) {
geocoder.geocode({'address': v_cim},function(results,status){
if(status == google.maps.GeocoderStatus.OK) {
v_koord_x = results[0].geometry.location.lat();
v_koord_y = results[0].geometry.location.lng();
callback(v_koord_x, v_koord_y);
}
});
}
getLatLng(function(v_koord_x, v_koord_y) {
alert(v_koord_x);
alert(v_koord_y);
folytatas();
});
}
else
{
folytatas();
}function folytatas()
{
JS második fele
} -
a2d2
addikt
Szia!
Na ránéztem a tegnapi alkotásokra és ahogy nézem próbáltam már minden félével (.when, .then, async: false, ...), de nem tudtam sehogy megállítani a főprogramot. Ez egy OL3 program, benne egy google maps-es geokódolással. A JS második fele kellene hogy megkapja a kiszámított koordinátákat:
JS első fele
function getLatLng(callback) {
geocoder.geocode({'address': v_cim},function(results,status){
if(status == google.maps.GeocoderStatus.OK) {
v_koord_x = results[0].geometry.location.lat();
v_koord_y = results[0].geometry.location.lng();
ajaxvege = true;
callback(v_koord_x, v_koord_y, ajaxvege);
}
});
}getLatLng(function(v_koord_x, v_koord_y, ajaxvege) {
alert(v_koord_x);
alert(v_koord_y);
});JS második fele
-
Sk8erPeter
nagyúr
"De ezt a mondatot neked írtam és nem neki"
Nem is nekem írtad.Szerintem mindketten értjük, mi a pálya, egyszerűbb, ha itt áll mindhárom változat, amiről beszéltünk, és akkor a kezdő is remélhetőleg megérti/megérzi a különbséget:
1:
var numbersArray = [1,2,3,4,5,6,7,8,9];
var evenNumbers = [];
for(var i = 0; i < numbersArray.length; i++) {
if(numbersArray[i] % 2 == 0) {
evenNumbers.push(numbersArray[i]);
}
}
console.log("Even numbers: ", evenNumbers);2:
var numbersArray = [1,2,3,4,5,6,7,8,9];
var evenNumbers = numbersArray.filter(function(num) {
return num % 2 === 0;
})
console.log("Even numbers: ", evenNumbers);3:
var numbersArray = [1,2,3,4,5,6,7,8,9];
var evenNumbers = numbersArray.filter(num => num % 2 === 0);
console.log("Even numbers: ", evenNumbers);(#5940) zuzu000:
"Egy Javascriptes metódust szeretnék implementálni C#-ba"
Ez a mondat így ebben a formában nem biztos, hogy értelmes...(#5937) Aureal:
Mi a cél vele amúgy? -
Sk8erPeter
nagyúr
Igen, szerintem ne egy filter és egy fat arrow megértésével kezdje valaki, amíg gondot okoz neki, hogy kigyűjtse egy tömbből a páros számokat, tehát még nem tiszta számára, hogy mit jelent egy for/while ciklus. Kezdőként Te sem syntactic sugart raktál a kávédba hagyományos cukor helyett.
Gondolj bele, mit fog fel egy kezdő abból, ha azt írod neki, hogy "Ezt fat arrow-nak hívják ami egy rövidebb syntactic sugar a function expressiönök helyett és lexikálisan bindolja a this-t, kvázi block scoping."
-
Sk8erPeter
nagyúr
-
Agostino
addikt
szia
nagykirály vagy, itt tök szépen lefut fiddle-ben : )) viszont tekintettel arra, hogy te hozzám képest pro vagy és a teszterben is lefut, innentől nekem is szépen le kellene futnia. de nem teszi, a chart nem jelenik meg. szóval akkor viszont ez valami lokális dolog lehet
az ajax kérdésre visszatérve - rajta voltam - firebug, net, xhr - GET data.csv 200 OK /ha jót nézek/
-
-
DNReNTi
őstag
Én codeschool-on néztem meg az ingyenes tutorialokat, az szerintem nagyon jó, alapoktól megy és szájbarágós, példálózós. Bár szerintem te ezen a szinten már túl vagy.
Ha mégsem akkor megéri rászánni az időt, meg lehet érteni belőle a strukturális alapokat. Az offical dokumentáció szvsz egy kalap szar.
-
inf3rno
nagyúr
Ja, ezt én is észrevettem, de engem nem zavar. A grunt-ot én nem szeretem, inkább a configuration by code híve vagyok, amit gulppal meg lehet csinálni. Sokkal rugalmasabb. Ha van kedved összeszórhatnál valami hasonló környezetet makefile-al, kíváncsi vagyok, hogy mi a különbség.
-
inf3rno
nagyúr
Neki valamilyen deprecated modullal sikerült csak megoldania. Egyébként ja, nagyjából ennyi a történet, de gondoltam, akkor már megcsinálom rendesen olyan formában, amire lehet később hivatkozni, ha felmerül ugyanez a kérdés, meg belövök hozzá teszt környezetet sourcemaps, el, meg minden ilyesmivel. Így is, úgy is kelleni fog nekem a master branch saját projektekhez, a babel-es branch meg nem sokban különbözik, úgyhogy belefér az időmbe, hogy pár órát annak az összevakarására is rászánok.
-
inf3rno
nagyúr
Életemben talán az az első sor, amit ES6-al írtam, annyi volt a cél, hogy legyen gyorsan valami ami ES6 featureöket használ, valid, és tudok hozzá tesztet írni. Sosem használtam babel-t, és nagy valószínűséggel nem is fogok. Az egész babel-es branch-et amúgy nektek szórom össze.
-
Karma
félisten
Szerintem nem szükségszerű, hogy a rossz érték beállítása után azonnal olvassa is valahol, így a stacktrace-ből nem sok látszik. Mondjuk az is egy jó kérdés, miért vannak pőrén változók, amit többen is állítgathatnak?
Egy darabig filóztam, hogy az Object.observe-vel nem lehetne-e megoldani a dolgot, de sajnos ott is csak a változás tényéről jön értesítés, a kiváltó ok nem látható.
-
inf3rno
nagyúr
Még régi msie-kben volt ez gond, amikor az enumerable nem volt implementálva és állandóan betette a konstruktort meg az Object.prototype-ban lévő dolgokat a for-in-be. Ma már van ES5 support, és hasOwnProperty nélkül is rendesen elmegy a for-in. Olyasmivel próbálkoztam, hogy enumerable: false-ra állítom a metódusokat, hogy néhány örökölt property-t be lehessen járni for-in-el. Ezeket kiszűrné a hasOwnProperty. Sajnos nem jött be a dolog a már említett böngészők közti eltérések miatt.
Igen, tisztában vagyok vele, hogy vannak erre callback-es megoldások, de én jobban szeretem a hagyományos ciklusokat, leginkább azért, mert sokszor elfelejtem kitenni a bind-ot a végére a callback-nek.
-
inf3rno
nagyúr
Ha van szabadidőd, akkor a helyedben beleolvasnék a "ddd strategic design" részébe egy-két cikknek, könyvnek, ilyesmi, hátha találsz valamit, amit erre az esetre lehet alkalmazni. Rosszul megírt projekteken is lehet vele javítani valamennyit. Azért csodát ez sem tud tenni az eddigiek alapján.
A tesztek nélküli refaktorálás meg nem egy ajánlott dolog. Érdemes lenne legalább 1-2 e2e tesztet beletenni így utólag a main feature-ök tesztelésére, hogy nagyon fontos dolgok ne törjenek el, ha átírtok valamit. Ez azok alapján, amit elmondtál, bármikor megtörténhet, amikor hozzányúltok a kódhoz.
Sajna a legacy-val ez van általában. Egy idő után túl nagy erőfeszítés megjavítani, az ember legszívesebben újraírná az egészet, de azért meg nem fizet senki, mert hát a mostani a rendszer is "jól" működik. A refaktorálásért sem fizetnek, hacsak nem sikerül elmagyarázni nekik, hogy minél többször nyúltok hozzá a kódhoz ilyen formában, annál valószínűbb, hogy széthullik az egész.
Úgy emlékszem, hogy for-in-el próbálkoztam a bejárással, és az Object.defineProperty-nél az enumerable: false eltérően öröklődik az egyes böngészőkben. Valahol nem kerül be bejárásnál a listába az öröklött tulajdonság, valahol meg bekerül. Azt hiszem ugyanígy hibák voltak a setter, getter, congfigurable terén is, de ezt nem mondom biztosra. Küldtem mindegyik major böngészős cégnek bug report-ot, hogy jó lenne közös nevezőre jutni ezzel kapcsolatban, de egyik sem reagált, úgyhogy én inkább nem használom többet azt a függvényt meg a for-in-t bejárásra (kivéve config objecteknél, meg 1-2 helyen). Sugar syntax-hoz kellett volna csak, megoldottam másképp, úgyhogy nem lényeges.
-
inf3rno
nagyúr
A BDD-t és a DDD-t próbáltátok már, vagy ahhoz meg még túl kicsi a projekt?
Én most olvasom a Vaugh Vernon könyvet DDD-vel kapcsolatban. Elég jól leírja, hogy hogyan lehet szétszedni kezelhetőbb méretű részekre óriás alkalmazásokat. Szerintem kliens oldalra is használható az elv, ha már akkora lenne a kód.
A BDD-ehhez többé-kevésbé szorosan kapcsolódik. Nálam kb annyiról szól, hogy cucumber-ben megírod a use case-eket a domain model nyelvén, utána ezeket lefordítod tesztekre step definition-ökkel. Aztán teszteled vele az alkalmazást. Lehet csak a domain model-t is tesztelni, amiben a business logic van, de akár e2e teszteket is lehet írni, és a kliens oldalról megközelítve tesztelni az egész alkalmazást (ez jóval lassabb). Elég széles a tárház, hogy mit tudsz tesztelni, és nagyon rugalmas, mert a step definition-ök szabadon cserélhetőek úgy, hogy közben a use case-ek ugyanazok maradnak felettük. Ha változik a megrendelői igény a logikát tekintve, akkor változik a use case is, ellenkező esetben viszont csak a step definition-höz kell hozzányúlni, ha éppen gombra kell kattintani link helyett vagy ilyesmi egy űrlap küldéshez. Egyelőre ezzel is csak kísérletezek, de egyre inkább úgy tűnik, hogy be tudom venni hagyományos TDD helyett a napi rutinba.
A kliens oldalon örök szopás, hogy 1000 féle környezetet kell megtámogatni. Nem új dolog. Én futottam már bele mostanában natív js bug-ba is. Nagyon kellemetlen, mert órákon át lehet keresni a kódodban, hogy hol a hiba, miközben nem ott van, hanem a js motorban... Ha nem TDD-vel írtam volna a kódot, akkor elkapálhattam volna magam, mert debug-nál még nehezebb egy ilyet leszűkíteni pár sor kódra. TDD-nél azért képben vagy, hogy éppen mire írtad 1 perce a tesztet.
Async-hez te milyen lib-eket használsz?
-
inf3rno
nagyúr
"inf3rno: typescript, dart, coffee, elm.. egyeni preferencia kerdese, szerintem ezek csak akkor hasznosak ha Java-n nevelkedett embernek kell JS kodot irnia. <tapasztalat>"
Személy szerint én annak idején js-el kezdtem, mint script kiddie, és nekem tetszik a TypeScript. Java-t tanultam egy keveset, de inkább az erős oo alap, ami miatt bejön, nem pedig a Java tudás miatt. Te funkcionálisan programozol js-ben, legalábbis a kódjaid alapján, ahhoz gondolom megfelel az a validálási forma, amit használsz. Én inkább az oo fele hajlok, ahhoz meg más eszközök a jobbak, pl TDD, vagy újabban BDD az alap, meg hogy minden sor kód tesztelve van. Ennél a megközelítésnél nekem kifejezetten zavaró, ha típusellenőrzésre kell teszt kódot fecsérelni. Nagyjából ennyi a különbség.
-
inf3rno
nagyúr
"This may not make sense at first but when you start dealing with multiple frames or windows in your script and pass objects from one context to another via functions, this will be a valid and strong issue."
Nekem továbbra sincs értelme. Mármint persze elfogadom, hogy nem működik, mert a böngészőket így tákolták össze, de ez sajna jellemző a kliens oldali fejlesztésre, hogy nekünk kell alkalmazkodni mások hülyeségéhez. Eléggé conformist viszonyban vagyunk a böngészőgyártókkal, nem customer-supplier-ben, hogy DDD-s szavakat puffogtassak. Ez már a kezdetek kezdete óta így van sajnos. Nem véletlenül utáltam meg a kliens oldali fejlesztést, és mentem át inkább szerverre.
-
inf3rno
nagyúr
1.
Hja, meglepődtem. Leginkább a null-on... Ezt a validációs részét a js-nek már 10 éve is újra kellett volna írni szerintem. Az egész egy jó nagy katyvasz. Elég hasonló a PHP-hez ilyen téren.2.
Erre mondtam, hogyha annyira a típus validálással akarsz molyolni, akkor érdemesebb TypeScriptet használni.Én személy szerint így oldanám meg a dolgot sima js-el:
function doStuff (inputArray) {
if (!(inputArray instanceof Array))
throw new TypeError("Array required.");
return inputArray.map(makeChange);
}aszinkron esetben meg
function doStuff (done, inputArray) {
if (!(inputArray instanceof Array)) {
done(new TypeError("Array required."));
return;
}
done(null, inputArray.map(makeChange));
}Primitíveknél is ugyanúgy jó a typescript, vagy ha nem szeretnél compile-t, akkor valóban írhatsz olyat, hogy
if (utils.typeOf(value, String))
és hasonlókat.
Szvsz. nem muszáj minden esetben ennyire szigorúan típusellenőrizni. Attól függ, hogy mire fejleszted a kódot. Ha valami kisebb projekthez kell gyorsan összeszórni olyasmit, amit ránézésre átlátsz, akkor felesleges erre időt pazarolni.
Leginkább az a hátránya ennek a nem beépített típusellenőrzésnek, hogy TDD-vel a teszt kód nagy része erre megy el, ahelyett, hogy a tényleges funkciókat tesztelné az ember.
-
Karma leírta a lényeget.
Ez egy Taskerre készült parser. A taskerben pedig van JSON parse. Egyébként jQuery-t is lehet használni, csak ki kell választani mint plusz library.
A cél a sebesség volt, illetve, h olyan laikusok, mint én is könnyen tudjanak a kódhoz plusz részt írni a későbbiekben, ha szükség lesz rá.
Szerintem ez sikerült hála slice14-nek, Karmának és a többieknek a Js topikból!
Ui.: egyébként amit a rawdata változóba raktál(fájl tartalma) azt a tasker beépített parancsaival egy sorral is meg lehet oldani. ("readFile('xy')")
-
slice14
veterán
A setGlobal-al lesz belőle tasker-es változó.
Egyébként itt az egész js. Link
Lehet hogy sok fölösleges dolog van benne. A tasker js support oldalból kiindulva kezdtük el a projektet. És a js-ről eddig csak hallottam, de fogalmam se volt arról hogy hogyan működik.
Ha van valami jó ötlet, hogy hogyan lehet rövidíteni rajta. Akkor ne tartsd vissza.
-
Speeedfire
félisten
Igazából a toch eseményeknél érzek kisebb lassulást, de cpu igényt nem igazán értem. De holnap akkor megpróbálom remote debug-al. Mit érdemes figyelni?
Amúgy ez a fapad verziója, nem teljes még, illetve kisebb felbontáson a player rész el van csúszva. Ami fura, hogy a telefonomra (540*960) kezdtem el csinálni, de telefonon teljesen más a méret (mintha kisebb lenne). -
dqdb
nagyúr
Azt azért hozzá kell tenni, hogy natív kódot tartalmazó csomag esetén előfordulhat, hogy Node.js-sel megy, míg io.js alatt fordítási hibát kapsz a telepítésekor (a frissebb V8-ben változott valamelyik API felülete, és még nem frissítették a csomagot).
Ne kérdezd, hogy melyik csomaggal volt problémám, mert arra már sajnos nem emlékszem. Pár hete futottam bele, amikor (nem webfejlesztőként) egy konkrét feladatra eléggé határozott elképzelésekkel kerestem a projekt alapjának összerakásához generátort vagy boilerplate kódot.
-
Zedz
addikt
Gondolkodtam még az io.js kipróbálásán is - amit azt hiszem még Te említettél -, csak nem tudom mennyire fog elterjedni, mekkora jövő áll előtte, szóval kezdésnek maradtam a nodejs mellett.
Az Expresst megnézem, köszönöm a tippet! Esetleg amit fentebb linkeltem Sailsjs-t, arról hallottál már valamit?
-
martonx
veterán
A feladatnál nincs megszabva, hogy html form-al kell elküldeni az adatot, a felvételiző dönti el, hogy hogyan akarja megoldani. Emberünk erőltette a formot, de még azt se tudta megcsinálni.
ASP.NET-nek is van saját helper metódusa a form készítésre, igaziból tök mindegy, hogy miben csinálja az ember, hiszem, hogy bármelyikünk, aki akár csak kicsit is jobb képességű, csukott szemmel meg tudja oldani a feladatot, ha más nem egy-két célzott guglis segítséggel. -
martonx
veterán
Igen, ezért is linkeltem be, mert egyébként egész korrektnek, a valóságtól nem elrugaszkodottnak tartom. Láttam már ennél jóval betegebb js kérdéssort is.
Hogy a felvételizők szintjéhez is hozzászóljak kicsit offban. Nálunk járt olyan alany, aki senior webfejlesztőnek jelentkezett, komoly cégnél (talán logmein) dolgozott több éves webfejlesztői tapasztalattal a háta mögött, bruttó millió feletti havi fizuigénnyel. Nálunk nincs klasszikus idióta tesztet kitöltős sok körös állásinterjú, az első fordulóban is kódolni kell, a másodikban is csak már komolyabban, a harmadikban van elbeszélgetés, és ha szimpi vagy, fel is vagy véve.
Nos az első körben van egy nagyon alap beugró, miszerint kérj be két számot a böngészőben, szerver oldalon kalkuláld a hányadosukat, és jelenítsd meg az eredményt a böngészőben (nincs megkötve, hogy ajax-al vagy anélkül, nincs megkötve, hogy milyen IDE-vel, milyen nyelvvel, használhatsz internetet is, egy megkötés van, hogy fél óra alatt kész kell lenned vele). Emberünk ezen a feladaton annál a résznél megakadt, hogy hogyan kell egy html formot összerakni, és a szervernek elküldeni a benne lévő adatot.
Egyébként döbbenet, de az első körös beugró feladatunkon a jelöltek kétharmada zokszó nélkül elvérzik... -
Sk8erPeter
nagyúr
Ezt még nem olvastam, de sejtettem, hogy valójában ilyen nevetséges a háttérsztori.
Egyébként én támogatnám, hogy akár a régi fos kódok eltörésével erőltessük keresztül ennek az automatikus pontosvessző-beszúrásnak (szerepeljen már legalább egyszer magyarul is
) az eltörlését.
-
martonx
veterán
Egyetértek, amikor lefutattam, rögtön be is ugrott, hogy miért csinálja, de véleményem szerint az ember akkor is bele tud futni egy-egy ilyen szivatásba, és azt akartam vele bemutatni, hogy ez azért nem olyan életidegen szivatós példa (egy plusz enter valahol a kódban).
Nem is vagyok rá büszke, hogy ezen a kérdésen elhasaltam, túl gyorsan vágtam rá magamban a nincs különbség választ (meg kimondottan javascriptes állásra akkor se jelentkeznék, ha két anyám lenne, de ez már szubjektív dolog).
-
DNReNTi
őstag
-
fordfairlane
veterán
De sokszor szukseg van arra, hogy klonozz egy objektumot.
A jóég tudja, hogy itt szükség van-e klónozásra vagy. teszAdat, meg egy = 1; ez aztán marha sokat elmond, hogy mire kell ez az egész. Konstansokat meg értékeket bepakolni egy objektumba nem klónozás, hanem sima prototipus használat, vagy még annyi sem.
var testArray = [];
testArray.push({egy: 1, ketto: 2});
testArray.push({egy: 3, ketto: 4});vagy
var testArray = [], testAdat;
function testAdatConstuct(egy, ketto) {
this.egy = egy;
this.ketto = ketto;
}
testAdat = new testAdatConstuct(1,2);
testArray.push(testAdat);
testAdat = new testAdatConstuct(3,4);
testArray.push(testAdat);Object.create-s példát nem írok, az már ES5.
Ez nekem alap objektumkezelésnek tűnik.
-
martonx
veterán
Én, mint a jquery egyik legnagyobb ellensége, mégis minden projektemben használom. Miért?
Mert a CSS3 selectorok még mindig nem az igaziak, noha az ES5-tel nagyságrendi ugrás következett be. És még mindig macera mondjuk class alapján kijelölt dom elemek összességéhez hozzáadni mondjuk egy click eseményt.
Aztán ott van az ajax, ami mostanra már szintén nem vészes plain js-sel, de azért egy jsonp, vagy egy async false kikényszerítés miatt, mégis sokat segít a jquery.
És akkor még nem beszéltünk a touch eventekről sem...
A jquery animations részét pedig évek óta abszolút nem használom.
Illetve mindezek mellett, ha az ember behúz egy jquery UI-t, vagy valami más plugint, akkor ismét ott van, hogy jquery kell hozzá. Ha meg már ott van, akkor miért ne használjuk.
Nagyon sok energiát fektettem egy időben abba, hogy plain js-t használjak, még egy mini js lib-et is elkezdtem írni, ami pont ezt a pár gyakran használt jquery funkciót valósítja meg, de valahogy mindig oda jukadtam ki, hogy még mindig a legkissebb rossz, behúzni a jquery-t. -
Sk8erPeter
nagyúr
Tényleg nagyon komolyak ezek a DevTools-újdonságok! Rengeteget fog számítani fejlesztésnél, debuggolásnál.
Amúgy az a rész vicces, ahol elemzik a jQuery jelenlegi hülyeségeit, amik jelentősen rontják a teljesítményt, és szinte következetesen azt hozzák ki a dologból, hogy használj plain JavaScriptet.
Egyet leszámítva, hogy ne használd a .hide()/.show() metódusokat, mert rohadt lassú, inkább váltogasd az osztályokat az elemen az elrejtéshez/megjelenítéshez - na én ezt speciel régóta követem, pedig nem vágtam, hogy ilyen komoly teljesítménybeli problémák vannak vele, mert szebb is, hogy nem égetődik bele a kódba a display:none; vagy display:block;.
-
Speeedfire
félisten
-
-
martonx
veterán
A cégünk vett két jegyet, csak épp egyikünk se akar menni. A hr-es csaj, ma is megkérdezte tőlem, hogy nem mennék-e? Lehet én vagyok a paraszt, de nem hiszek a konferenciákban. Kétszer is megnéztem a programot, de egy olyan előadást nem tudnék mondani közülük, amiért megérné két napot ott szopni. Mondjuk talán jobb, mint dolgozni. Én személy szerint jobb szeretek tanfolyamokra elmenni, a konferenciák elég bullshit szagúak.
-
Sk8erPeter
nagyúr
Bocsánat a totális OFF-ért, de úgy látom, még mindig nem kopott ki a fejlesztői közbeszédből ez a "meredek tanulási görbe", pedig ez a kifejezés meglehetősen értelmetlen, ezt már itt is leírtam: [link].
Ha az x tengelyen az idő van, az y tengelyen pedig a tudás mértéke, akkor a meredek pont azt jelenti, hogy rohadt gyorsan tanulható. Pedig általában ellenkező jelentéssel szokták használni. Ha fordítva lenne ábrázolva, úgy még talán lenne is értelme, de ez csak azt bizonyítja, hogy a kifejezés jelentése csupán értelmezés kérdése, tehát körülményes, feleslegesen finomkodó (vagy nem is tudom, hogy mondjam, lehet, hogy az "okoskodó" szó már erős
), simán írhatnánk azt, hogy "hosszú idő alatt tanulható", "nehéz", "elsajátítása egy hosszabb folyamat", stb.
-
martonx
veterán
Maximálisan egyetértek. Én a true + false összeadásos (talán a negyedik vagy az ötödik volt) példánál kapcsoltam ki. Roppant életszerű példák...
Múltkor egyébként volt szerencsém belefutni egy elképesztően idióta állásinterjús tesztbe. Ugyan nem keresek állást, de ez épp olyan volt, hogy az undormány pestről le tudtam volna menni vidékre, ezért adtam neki egy esélyt. Hát mit ne mondjak, ezek az állásinterjúk bőven jók arra, hogy az ember tudja, hova nem akar egészen biztosan menni, soha dolgozni.
Új hozzászólás Aktív témák
Hirdetés
- Keresem : Lenovo Legion 5 16IRX9 83DG0037HV
- LG 27GR95QL - 27" OLED / Limitált LoL Edition / QHD 2K / 240Hz & 0.03ms / NVIDIA G-Sync / FreeSync
- KIÁRUSÍTÁS - REFURBISHED és ÚJ - Lenovo ThinkPad Ultra Docking Station (40AJ)
- BESZÁMÍTÁS! ASUS ROG CROSSHAIR X670E GENE alaplap garanciával hibátlan működéssel
- Apple iPhone 14 Pro Max / 256 GB / 88% akkumulátor / 1év Garanciával / Gyári Független
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged