Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.javascript > #4945
| From | Jan Novak <repcom@gmail.com> |
|---|---|
| Newsgroups | de.comp.lang.javascript |
| Subject | Re: not a function |
| Date | 2018-04-26 07:55 +0200 |
| Organization | albasani.net |
| Message-ID | <pbrpju$8v9$1@news.albasani.net> (permalink) |
| References | <pbppha$jg2$1@news.albasani.net> <5377515.lOV4Wx5bFT@PointedEars.de> |
Am 25.04.18 um 21:04 schrieb Thomas 'PointedEars' Lahn:
> Jan Novak wrote:
>
>> Ich habe folgenden JS Code aus bootstrap-treeview übernommen:
>
> Nein, hast Du _nicht_, sondern Du hast *wieder* ohne Sinn und Verstand
> Copy & Pray gemacht :-(
Du solltest Lehrer werden ;-)
>
> Dir ist trotz des vorherigen Threads, den Du vor anderthalb Monaten hier
> angefangen hattest, offenbar *immer* *noch* *nicht* klar, wie *asynchrone*
> Verarbeitung funktioniert, und wie sie sich von *synchroner* Verarbeitung
> unterscheidet.
Das mag sein, da ich bisher nur mit synchronen Daten gearbeitet habe.
Ich hatte bisher leider keine Zeit, neben Arbeit, Beruf, Familie, Kinder
und und und auch noch einen mehrmonatigen JS Kurs zu machen ;-)
>
> function (data) { … }
>
> als zweites Argument von $.getJSON() ist offensichtlich ein *Callback*, der
> ausgeführt wird, wenn der Server auf den HTTP-Request (URI angegeben durch
> das erste Argument) *geantwortet* hat.
> Die Antwort vom Server trifft in der Regel ein, *nachdem* $.getJSON()
> ausgeführt wurde *und* *zurückgekehrt* ist. Der Rückgabewert des Callbacks
> landet also _nicht_ in “initSelectableTree”, sondern wird (in der Regel)
> *weggeworfen*.
Wie kann dann überhaupt irgendetwas funktionieren?
> Und der Rückgabewert von jQuery.getJSON() ist, wie Du hättest nachlesen
> können, _nicht_ ausführbar (callable), sondern ein Objekt, was das Promise-
> Interface implementiert (ab jQuery 1.5; vorher wohl der “undefined”-Wert):
>
> <http://api.jquery.com/jquery.getjson/>
>
> Ich mal’s Dir nochmal als UML-Sequenzdiagramm auf (Festbreitenschriftart
> verwenden).
>
> Du willst folgendes machen:
>
> .---------------- Client --------------.
> : :
>
> Script HTTP API Server
> : : :
> .-. $.getJSON() : :
> : :---------------------->.-. GET /include/fetch.php HTTP/1.x :
> : : : :---------------------------------->.-.
> : : undefined/:: Promise : : : :
> : :<- - - - - - - - - - --'-' : :
> : : : :
> : : DOM API function (data) HTTP/1.x 200 OK : :
> : : : .-.<- - - - - - - - - - - - - - - - --'-'
> : : .-.<-----------: : :
> : : : : : : :
> : : '-'- - - - - ->: : :
> : : : '-' :
> '-' : : :
> : : X :
> X : :
Ich lande also hier ..............^ statt wie gewünscht
hier ...^
>
> Demgegenüber machen die Bootstrap-Leute im Originalcode etwas *völlig*
> *anderes*:
>
> .---------------- Client --------------. *kein* Server
> : :
>
> :
> .-.
> : : (function () { … }())
> : :----------------------->.-.
> : : : :
> : :<- - - - - - - - - - - -'-'
> : :
> : : initSelectableTree()
> : :----------------------->.-.
> : : : :
> : :<- - - - - - - - - - - -'-'
> : :
> '-'
> :
> X
>
> (Schau Dir mal an, wo “defaultData” herkommt.)
defaultData kam aus einerm statischen Array innerhalb JS, was natürlich
in einem Programm witzlos ist, denn die Daten, welche angezeigt werden
sollem, kommen natürlich aus einer Datenbank.
>
>
> Jetzt klar?
Naja... ein wenig...
Mir fehlen die Basics in JS, unter anderem die a-/synchrone Verarbeitung
und die Verkettung von Variablen und Funktionen.
Nichts desto trotz möchte ich JS in meinem PHP Programm nutzen können.
**
Unabhängig von meiner Frage und deiner Antwort möchte ich darauf hin
weisen, dass mit Schulmeisterei weder Sympathien noch Motivation
geschaffen wird - auch wenn es letztendlich irrelevant ist. Für junge
Leute, die hier vielleich mal lesen und sich für Softwareprogrammierung
interessieren, ist dies sicher auch keine Motivation, sich näher mit dem
Thema zu beschäftigen.
Und wie wir alle wissen, werden *gute* Prigrammierer in der Wirtschaft
händeringend gesucht. Ich für meinen Teil bin weder ein *guter*
Programmierer noch für die Wirtschaft (als Softwareentwickler) tätig.
Ich mach das nur für *mich* um eine Aufgabe zu lösen, die ich mir selbst
gestellt habe.
Jan
Back to de.comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar
not a function Jan Novak <repcom@gmail.com> - 2018-04-25 13:41 +0200
Re: not a function Sascha Hüdepohl <news@juenger-der-himmlischen-teekanne.de> - 2018-04-25 17:49 +0200
Re: not a function Jan Novak <repcom@gmail.com> - 2018-04-26 07:39 +0200
Re: not a function Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2018-04-25 21:04 +0200
Re: not a function Jan Novak <repcom@gmail.com> - 2018-04-26 07:55 +0200
Re: not a function "Peter J. Holzer" <hjp-usenet3@hjp.at> - 2018-04-28 19:50 +0200
Re: not a function Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2018-04-29 01:14 +0200
Re: not a function Jan Novak <repcom@gmail.com> - 2018-04-26 08:07 +0200
Re: not a function Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2018-04-29 01:30 +0200
Re: not a function Jan Novak <repcom@gmail.com> - 2018-05-02 15:06 +0200
Re: not a function Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2018-05-05 01:00 +0100
csiph-web