Moin zusammen, ich bin aktuell dabei ein kleines Board zu entwickeln. Da meine Kentnisse in Elektrotechnik und Mikrokontroller aber nur maessig sind, koennte ich etwas Hilfe gebrauchen. Damit das nicht einseitig ist, biete ich, mit Vergnuegen, mein Wissen an. Also, wer in den folgenden Bereichen gerade Hilfe braucht, darf sich gerne melden: - Basic/Advanced Javascript/CSS/HTML, wie entwickelt man skalierbare, wartbare und performante Anwendungen im Frontend. Stichworte: Redux, React, ES6, BEM, ITCSS, HTML5 - Basic Microservices Architecture, wie entwickelt man skalierbare, wartbare, ressourcenschonende near-realtime Anwendungen. Stichworte: Mesos, Aurora, Docker, Flink - Basic/Advanced PHP - Basis Scala Was mache ich beruflich? Ich bin Software-Entwickler und fokusiere mich auf Javascript und Scala. Mein preferiertes Themen ist Software-Architektur. Wie bekommt man es hin: schnell wartbare, skalierende und performante Architekturen zu bauen. Effizienz ist dabei auch immer ein Kernthema. Um die Punkte geht es auch bei meinem Projekt. Vorher war ich Technical Consultant und habe diverse Projekte fuer Kunden umgesetzt und sie beraten. Darunter auch eine handvoll DAX-Unternehmen. Gruss Philipp
Du kannst also fliessend JavaScript und ES6? Dass will ich sehen! Wie wärs mit einem Rätsel?
1 | var f = ___________________; // Welcher 19 Zeichen lange Ausdruck fehlt hier |
2 | console.log(f("test")); // Ausgabe: [ "t", "e", "s", "t" ] |
3 | console.log(f({0:1,1:"test",length:2})); // Ausgabe: [ 1, "test" ] |
Um dieses Rätsel lösen zu können muss man sowohl ein ES6 Features als auch die tiefen Abgründe von JavaScript kennen.
Zugegeben: ich komm nicht drauf.
Das du hinten noch length in das Objekt gepackt hast, hat mich darauf
gebracht, dass du auf Array.from hinaus willst. Gut, also dachte ich
erst einmal an:
var f = Array.from;
console.log(f("test"));
console.log(f({0:1,1:"test",length:2}));
Hat genau die Ausgabe, die du haben wolltest, ist aber keine 19 Zeichen
lang. Da fehlen noch 9. Also nochmal ueberlegt.
Nun habe ich gedacht du willst auf irgendwas hinaus, was keinen Einfluss
hat, wie:
var f = Array.from.bind();
console.log(f("test"));
console.log(f({0:1,1:"test",length:2}));
Ist allerdings nur 17 Zeichen lang. Passt also nicht. Ich glaube die
Richtung ist aber schon richtig, oder? Irgendeine call oder apply
Sauerei oder aehnliches, ich komm halt nur nicht drauf. Ich hatte kurz
auch an irgendwelche prototype Geschichten gedacht, aber das wird es
nicht sein.
An Array.from hatte ich noch gar nicht gedacht, ist hier jedoch vermutlich sogar besser als dass, woran ich dachte. Ich wollte tatsächlich auf eine .call Sauerei hinaus, nämlich auf einen alten Trick mit Array.prototype.slice.call kombiniert mit einer Arrow funktion:
1 | var f = x=>[].slice.call(x); |
Ahh okay, an Arrow functions hab ich tatsaechlich gar nicht gedacht. An slice habe ich als aller erstes gedacht kam aber mit den Zeichen nicht hin, weil ich nicht an die Arrow function gedacht habe :) Aber gut wir haetten aber geklaert, dass ich hier kein Buzzword-Bingo spiele :D PS: Ich glaube die Leute moegen das nicht, dass du das Wissen anderer anzweifelst. Machst du das des oefteren? :D
Nicht unbedingt, aber ich betrachte alles immer erst kritisch und hinterfrage Dinge gerne.
Daniel A. schrieb: > Nicht unbedingt, aber ich betrachte alles immer erst kritisch und > hinterfrage Dinge gerne. Finde ich gut :) Dann lass dich mal nicht unter kriegen. Man muss nur, hin und wieder aufpassen. Ich hatte dadurch, beruflich, schon so meine Probleme. Wenn man sich selbst genauso kritisiert, ist das eine gute Eigenschaft und stetig besser zu werden ;)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.