JavaScript!!!




Was es sonst noch so gibt...

JavaScript!!!

Beitragvon MasterRamsFan » 09.08.2005, 19:07

Hier mal was für IT-Profis: Bild

Das kann doch alles nicht wahr sein!!!!

Was macht der Aufruf der JavaScript-Funktion "parseInt" in folgendem Fall: parseInt ("09")?

Gibt es die Zahl 9 aus?

Neeeeiiiinnn, natürlich nicht... Bild Bild

Wenn in dem String eine "0" als erstes steht, denkt der hirnamputierte Parser, dass es sich um eine octal Zahl handelt... Ist das zu glauben?!?! Bild

Und im octalen System gilt die "9" als nicht bekannte Ziffer und damit liefert das Ganze "0" zurück... Bild

Dass ein "o" oder "O" (also der Buchstabe zwischen "N" und "P") ein Hinweis auf eine Octalzahl ist verstehe ich ja, aber im String steht eindeutig eine "0" (also eine NULL/ZERO). Das ist doch wahnsinnn...

Dadurch stand bei heutigen Einträgen nicht mehr "Heute, 12:02 Uhr" sondern nur das normale Datum ("09.08.2005, 12:02 Uhr") als ob der Eintrag schon ein paar Tage als wäre...

Der Fehler tritt auch nur auf, wenn der Tag zwischen 8 und 9 oder der Monat 8 und 9 liegt... also am 8.8, 9.8., 8.9. und 9.9.

Gut, dass er mir heute aufgefallen ist...

Wirklich manchmal könnte man bei der Programmierung echt durchdrehen... Bild Bild Bild Bild Bild Bild Bild Bild

PS: Das Probmme läßt sich durch einen weiteren Parameter lösen der das verwendete Zahlensystem angibt. Der Aufruf von parseINT ("09", 10) ergibt dann endlich "9"... Bild
Zuletzt geändert von MasterRamsFan am 09.08.2005, 19:11, insgesamt 1-mal geändert.
How 'bout them Raaaamms!!!!
(Kurt Warner nach der Übergabe der Vince Lombardy Trophy SBXXXIV)
MasterRamsFan
Site Admin
 
Beiträge: 1563
Registriert: 15.01.2004, 19:56
Wohnort: Berlin

von Anzeige » 09.08.2005, 19:07

Anzeige
 

Re: JavaScript!!!

Beitragvon HollaDieWaldfee » 09.08.2005, 19:50

Ich bin kein Javascript-Experte, aber womöglich dürfte der Fehler schon behoben sein, wenn du die Zahl 09 nicht in Anführungszeichen angibst.
Viele Programmier-, oder wie in diesem Fall eine Scriptsprache, interpretieren solche Werte als Zeichenketten und nicht als Zahlen oder machen andere, meist äusserst skurile Sachen damit Bild Bild Bild
HollaDieWaldfee
 
Beiträge: 257
Registriert: 20.08.2004, 10:50
Wohnort: Essen/NRW

Re: JavaScript!!!

Beitragvon MasterRamsFan » 09.08.2005, 20:27

Diese Funktion dient ja gerade dazu Strings in Zahlen zu konvertieren...

Im konkreten Fall steht da noch nicht mal eine String-Konstanten sondern eine String-Variable mit dem Inhalte "09"...

Aber es stimmt schon: Skriptsprachen wie PHP und PERL sind teilweise echt krank...

JavaScript ist ja nicht direkt eine echte Skriptsprache... (oder?)
Zuletzt geändert von MasterRamsFan am 09.08.2005, 20:28, insgesamt 1-mal geändert.
How 'bout them Raaaamms!!!!
(Kurt Warner nach der Übergabe der Vince Lombardy Trophy SBXXXIV)
MasterRamsFan
Site Admin
 
Beiträge: 1563
Registriert: 15.01.2004, 19:56
Wohnort: Berlin

Re: JavaScript!!!

Beitragvon HollaDieWaldfee » 09.08.2005, 21:17

Na, JavaScript ist aber doch auf jeden Fall eine Script-Sprache. Eine Sriptsprache kann man glaube ich am einfachsten dadurch definieren, dass diese z.B. nicht kompiliert werden muss, zumindest nicht manuell vom Anwender, sondern On-the-Fly vom Interpreter, gelinkt, gprüft und kompiliert wird. Auch eine Fehleranalyse des Codes wird meist erst nach Kompilierung durchgeführt.
Ein weiteres wichtiges Merkmal, wie ich finde, ist auf jeden Fall die Automatisierung gängiger Funktionen wie Linking, Memory-Management oder die Bereitstellung und interne Umwandlung von Typenunabhängigen Variablen. Halt alles, was unter C, C++, C# halt ne Menge Arbeit und nerven verschlingt.

Gruß,
Stefan

PS: Auch Wikipedia gibt mir da, wenn auch ein wenig anders beschrieben Recht:
[url=http://de.wikipedia.org/wiki/Scriptsprache]http://de.wikipedia.org/wiki/Scriptsprache[/url]
Zuletzt geändert von HollaDieWaldfee am 09.08.2005, 21:17, insgesamt 1-mal geändert.
HollaDieWaldfee
 
Beiträge: 257
Registriert: 20.08.2004, 10:50
Wohnort: Essen/NRW

Re: JavaScript!!!

Beitragvon MasterRamsFan » 09.08.2005, 23:39

HollaDieWaldfee hat geschrieben:Na, JavaScript ist aber doch auf jeden Fall eine Script-Sprache. Eine Sriptsprache kann man glaube ich am einfachsten dadurch definieren, dass diese z.B. nicht kompiliert werden muss, zumindest nicht manuell vom Anwender, sondern On-the-Fly vom Interpreter, gelinkt, gprüft und kompiliert wird.


dann wäre ja BASIC auch eine Scriptsprache...

Auch eine Fehleranalyse des Codes wird meist erst nach Kompilierung durchgeführt.


He? Natürlich wird sofort beim Compilieren der Kode auf Syntaxfehler hin überprüft. Nur, ein Interpreter übersetzt halt erst "OnDemand". Also erst wenn bestimmte Kodezeilen gebraucht werden, werden sie interpretiert/kompiliert. So funktionieren ja auch Java und BASIC.

Ein weiteres wichtiges Merkmal, wie ich finde, ist auf jeden Fall die Automatisierung gängiger Funktionen wie Linking, Memory-Management oder die Bereitstellung und interne Umwandlung von Typenunabhängigen Variablen.


Auch das bietet Java und zum großen Teil auch BASIC die beide KEINE Scriptsprachen sind...

Nun meine Definition: Scriptsprachen sind Sprachen die sich innerhalb anderer Inhalte befinden. So ähnlich wie Wordmacros innerhalb eines Word-Dokumentes ist auch PHP-Kode innerhalb einer HTML-Seite eine Scriptsprache. In der Tat gebraucht es eines Interpreters. Das ist im Falle von JavaScript eben der Browser. Sprachen wie PHP oder PERL sind auch Scriptsprachen, die aber Seitens des Servers von speziellen Diensten bereits interpretiert werden und gar nicht in den Browser des Users erscheinen. Scriptsprachen können letztlich nicht allein leben bzw. brauchen immer ein Hilfstool um zu funktionieren.

Summa Summarum: JavaScript ist eine Scriptsprache, ja! Ich war nur deswegen etwas skeptisch, weil JavaScript über Konstrukte verfügt, von denen PHP und PERL nur träumen können (Objektorientierung, Exception-Handling, Methoden und Funktionen, usw...).

Das war jetzt meine Definition, die sich (ich habe eben nachgeschaut) doch ganz gut mit der von WikiPedia deckt...
How 'bout them Raaaamms!!!!
(Kurt Warner nach der Übergabe der Vince Lombardy Trophy SBXXXIV)
MasterRamsFan
Site Admin
 
Beiträge: 1563
Registriert: 15.01.2004, 19:56
Wohnort: Berlin

Re: JavaScript!!!

Beitragvon HollaDieWaldfee » 10.08.2005, 08:48

MasterRamsFan hat geschrieben:MasterRamsFan schrieb am 09.08.2005 22:39
dann wäre ja BASIC auch eine Scriptsprache...


Autsch, da hasse mich Bild

He? Natürlich wird sofort beim Compilieren der Kode auf Syntaxfehler hin überprüft. Nur, ein Interpreter übersetzt halt erst "OnDemand". Also erst wenn bestimmte Kodezeilen gebraucht werden, werden sie interpretiert/kompiliert. So funktionieren ja auch Java und BASIC.


Da hab ich mich was dumm ausgedrückt. Ich meinte es schon so, wie Du es jetzt geschrieben hast. Bin nicht auf den Begriff "OnDemand" gekommen... Bild

Ein weiteres wichtiges Merkmal, wie ich finde, ist auf jeden Fall die Automatisierung gängiger Funktionen wie Linking, Memory-Management oder die Bereitstellung und interne Umwandlung von Typenunabhängigen Variablen.


Auch das bietet Java und zum großen Teil auch BASIC die beide KEINE Scriptsprachen sind...


Bei Basic muss ich mich geschlagen geben... da habe ich jetzt keine Gegenbeweise, die ich auch beweisen könnte, bei Java wiederum verschmelzen diese Definitionen ein bisschen. Soviel ich weiss, wurde Java aber auch als eine Programmiersprache entwickelt, die die Vorteile von Script- und höheren Programmiersprachen vereinigen soll.

Nun meine Definition: Scriptsprachen sind Sprachen die sich innerhalb anderer Inhalte befinden. So ähnlich wie Wordmacros innerhalb eines Word-Dokumentes ist auch PHP-Kode innerhalb einer HTML-Seite eine Scriptsprache. In der Tat gebraucht es eines Interpreters. Das ist im Falle von JavaScript eben der Browser. Sprachen wie PHP oder PERL sind auch Scriptsprachen, die aber Seitens des Servers von speziellen Diensten bereits interpretiert werden und gar nicht in den Browser des Users erscheinen.


So, da muss ich als überzeugter Jünger der Perl-Sekte jetzt aber Einspruch einlegen. Bild
Perl ist nicht auf ein "Hilfstool" oder gar einen Serverprozess angewiesen. Ganz im Gegenteil. Die Entwicklung von Webanwendungen wurde erst viel später ein Aufgabenbereich für Perl. CGI ist nur eine Anwendungsmöglichkeit. Neben CGI wird Perl heutzutage auch sehr stark in der Bioinformatik eingesetzt. Ich habe sogar schon komplexere GUI-Anwendungen in Perl geschrieben.

<hr></blockquote></p>
Scriptsprachen können letztlich nicht allein leben bzw. brauchen immer ein Hilfstool um zu funktionieren.
<hr></blockquote></p>

Da muss ich sogar, wenn auch nur ungern, die PHP-Schmierer-Fraktion in Schutz nehmen. Ich meine, sogar mit PHP ist es möglich, eigenständige Anwendungen zu erstellen.

Summa Summarum: JavaScript ist eine Scriptsprache, ja! Ich war nur deswegen etwas skeptisch, weil JavaScript über Konstrukte verfügt, von denen PHP und PERL nur träumen können (Objektorientierung, Exception-Handling, Methoden und Funktionen, usw...).


HALTE INNE UNGLÄUBIGER! Bild Perl verfügt über eine volle Unterstützung für Objektorientierung (OK keine 100%ig echte, aber dass kommt ab der kommenden Version 6) und kann mit Exceptionhandling, MEthoden und Funktionen mit Javascript allemal messen. Wobei Javascript da mit Sicherheit den kürzeren zieht.
Perl ist vorallem durch die Tatsache, dass es seit ca. 1990 existiert, an Funktionsvielfalt von nur einzelnen, wenigen
(Script)sprachen zu übertreffen, was zugegebener Massen auch nicht unbedingt der Übersichtlichkeit zu Gute kommt. Bild

Das war jetzt meine Definition, die sich (ich habe eben nachgeschaut) doch ganz gut mit der von WikiPedia deckt...


Einigen wir uns auf: "Wir haben beide voll recht" Bild Bild Bild Bild Bild
HollaDieWaldfee
 
Beiträge: 257
Registriert: 20.08.2004, 10:50
Wohnort: Essen/NRW

Re: JavaScript!!!

Beitragvon MasterRamsFan » 10.08.2005, 10:52

HollaDieWaldfee hat geschrieben:Einigen wir uns auf: "Wir haben beide voll recht" Bild Bild Bild Bild Bild


Und darauf, dass ich viel über Perl gelernt habe... Bild

Da muß ich mich wohl entschuldigen... Ich kannte PERL eher als Sprache zur, zugegeben genialen, String-Verarbeitung... Ich hatte wirklich keine Ahnung, dass damit sogar GUIs programmiert werden können... Wird die GUI dann per GUI-Editor erzeugt (sowie bei Delphi oder VisualBasic) oder muss alles per Hand gemacht werden?
How 'bout them Raaaamms!!!!
(Kurt Warner nach der Übergabe der Vince Lombardy Trophy SBXXXIV)
MasterRamsFan
Site Admin
 
Beiträge: 1563
Registriert: 15.01.2004, 19:56
Wohnort: Berlin

Re: JavaScript!!!

Beitragvon HollaDieWaldfee » 10.08.2005, 14:14

MasterRamsFan hat geschrieben:Ich hatte wirklich keine Ahnung, dass damit sogar GUIs programmiert werden können... Wird die GUI dann per GUI-Editor erzeugt (sowie bei Delphi oder VisualBasic) oder muss alles per Hand gemacht werden?


Es gibt auch den ein oder anderen GUI-Editor, selbst schreibe ich den Code aber lieber von Hand, da weiss man wengstens, was man hat. Solche Editoren produzieren meist viel zu viel Code für einfachste Aufgaben.
Ich habe hier auf dem Firmenserver leider nur eine GUI-Anwendung gefunden, den Rest habe ich zuhause. Von dem einen, ein Mailbox Überwachungsprogramm, habe ich dir mal nen Screenshot gemacht:
Bild
HollaDieWaldfee
 
Beiträge: 257
Registriert: 20.08.2004, 10:50
Wohnort: Essen/NRW

Re: JavaScript!!!

Beitragvon MasterRamsFan » 10.08.2005, 15:07

Wow! Sieht ja richtig gut aus! Bild

Respekt! Ich hätte NIE gedacht, dass man so was alles mit PERL kann...

Danke für die Infos... Bild

Man lernt eben nie aus... Bild
How 'bout them Raaaamms!!!!
(Kurt Warner nach der Übergabe der Vince Lombardy Trophy SBXXXIV)
MasterRamsFan
Site Admin
 
Beiträge: 1563
Registriert: 15.01.2004, 19:56
Wohnort: Berlin


Zurück zu SONSTIGES

Wer ist online?

0 Mitglieder

cron