SELFHTML: JavaScript / Objektreferenz / Objektunabhängige Funktionen
Description: (SELFHTML 7.0) Vordefinierte, objektunabhängige Funktionen in JavaScript
Keywords: SELFHTML, JavaScript, Funktionen, vordefinierte Funktionen, objektunabhängige Funktionen

SELFHTML/Quickbar JavaScript Objektreferenz

| ## Objektunabhängige Funktionen
| Allgemeines zu objektunabhängigen Funktionen eval() (Ausdruck berechnen) parseFloat() (in Kommazahl umwandeln) parseInt() (in Ganzzahl umwandeln) isNaN() (auf numerischen Wert prüfen) Number() (auf numerischen Wert prüfen) String() (auf numerischen Wert prüfen) escape() (ASCII-Zeichen in Zahlen umwandeln) unescape() (Zahlen in ASCII-Zeichen umwandeln)

## Allgemeines zu objektunabhängigen Funktionen

Objektunabhängige Funktionen sind im Gegensatz zu selbst definierten Funktionen in JavaScript bereits vordefiniert. Das heißt, Sie können diese Funktionen jederzeit aufrufen.

Es handelt sich um bestimmte, zum Teil mächtige JavaScript-Befehle, die in keines der JavaScript-Objekte passen und deshalb nicht der objektorientierten Richtung von JavaScript folgen.

## eval()

Berechnet die zu übergebende Zeichenkette und gibt das Ergebnis zurück.
Erzeugt eine Fehlermeldung, wenn die Zeichenkette Zeichen enthält, die nicht als Teil einer Rechenoperation interpretierbar sind.

### Beispiel:

    <html><head><title>Test</title>
    </head><body>
    <form>
    <input size=30 name="Eingabe">
    <input type=button value="Berechnen"
    onClick="alert(eval(this.form.Eingabe.value))">
    </form>
    </body></html>

### Erläuterung:

Das Beispiel enthält ein Formular mit einem Eingabefeld und einem Button. In dem Eingabefeld kann der Anwender eine Rechenoperation eingeben, zum Beispiel `1+2+3+4+5+6+7+8+9` oder `12.78*5.13`. Beim Klick auf den Button wird der Wert aus dem Formular mit `eval()` berechnet und in einem Meldungsfenster ausgegeben.

## parseFloat()

Wandelt eine zu übergebende Zeichenkette in eine Zahl um und gibt diese als numerischen Wert zurück. Wenn sich die Zahl als Kommazahl interpretieren läßt, wird dies berücksichtigt. Als Dezimalzeichen wird jedoch nur der Punkt interpretiert. Sinnvoll, um z.B. Anwendereingaben in Zahlen umzuwandeln, mit denen man anschließend rechnen kann.
Gibt `NaN` (Not a Number) zurück, wenn die Zeichenkette mit Zeichen beginnt, die sich nicht als Teil einer Zahl interpretieren lassen.
Wenn die Zeichenkette weiter hinten ungültige Zeichen enthält, wird die Zahl bis zum ersten ungültigen Zeichen interpretiert und der interpretierte Teil zurückgegeben.

### Beispiel:

    <html><head><title>Test</title>
    </head><body>
    <script language="JavaScript">
    var Elemente = new Array("18","18.1","18,9","abc","1a");
    document.write("<h1>Anwendung von <i>parseFloat()</i></h1>");
    for(i=0;i<Elemente.length;++i)
     document.write(Elemente[i] + " = <b> " + parseFloat(Elemente[i]) + "</b><br>");
    </script></body></html>

### Erläuterung:

Das Beispiel definiert einen Array mit verschiedenen Elementen, die teils ganze, teils Kommazahlen, teils gar keine Zahlen darstellen. Dann werden in einer for-Schleife alle Elemente des Arrays mit der write()-Methode dynamisch in die Datei geschrieben. Dabei wird jedoch die Funktion `parseFloat()` auf das jeweilige Array-Element angewendet.

## parseInt()

Wandelt eine zu übergebende Zeichenkette in eine Ganzzahl um und gibt diese als Ergebnis zurück. Sinnvoll, um z.B. Anwendereingaben in Zahlen umzuwandeln, mit denen man anschließend rechnen kann.
Gibt `NaN` (Not a Number) zurück, wenn die Zeichenkette mit Zeichen beginnt, die sich nicht als Teil einer Zahl interpretieren lassen.
Wenn die Zeichenkette weiter hinten ungültige Zeichen enthält, wird die Zahl bis zum ersten ungültigen Zeichen interpretiert und der interpretierte Teil zurückgegeben. Das gilt bei `parseInt()` auch für den Punkt.

### Beispiel:

    <html><head><title>Test</title>
    </head><body>
    <script language="JavaScript">
    var Elemente = new Array("18","18.1","18.9","abc","1a");
    document.write("<h1>Anwendung von <i>parseInt()</i></h1>");
    for(i=0;i<Elemente.length;++i)
     document.write(Elemente[i] + " = <b> " + parseInt(Elemente[i]) + "</b><br>");
    </script></body></html>

### Erläuterung:

Das Beispiel definiert einen Array mit verschiedenen Elementen, die teils ganze, teils Kommazahlen, teils gar keine Zahlen darstellen. Dann werden in einer for-Schleife alle Elemente des Arrays mit der write()-Methode dynamisch in die Datei geschrieben. Dabei wird jedoch die Funktion `parseInt()` auf das jeweilige Array-Element angewendet.

## isNaN()

Ermittelt, ob ein zu übergebender Wert eine ungültige Zahl ist (NaN = Not a Number).
Gibt `true` zurück, wenn der Wert keine Zahl ist, und `false`, wenn es eine Zahl ist. Sowohl ganze Zahlen als auch Kommazahlen werden als gültige Zahlen anerkannt. Bei Kommazahlen muß das Dezimalzeichen ein Punkt sein.

### Beispiel:

    <html><head><title>Test</title>
    <script language="JavaScript">
    function CheckZahl(Wert)
    {
     if(isNaN(Wert) == true)
     {
      alert(Wert + " ist keine Zahl!");
      return false;
     }
     else return true;
    }
    </script>
    </head><body>
    <form>
    <input size=30 name="Eingabe">
    <input type=button value="Check"
    onClick="CheckZahl(this.form.Eingabe.value)">
    </form>
    </body></html>

### Erläuterung:

Das Beispiel enthält ein Formular mit einem Eingabefeld und einem Button. Beim Klick auf den Button wird die Funktion `CheckZahl()` aufgerufen. Der Funktion wird der Wert aus dem Eingabefeld des Formulars als Parameter übergeben. `CheckZahl()` prüft, ob der übergebene Wert eine Zahl ist. Dazu wird `isNaN()` auf den übergebenen Wert angewendet. Wenn es keine Zahl ist, wird eine Fehlermeldung ausgegeben.

## Number()

Konvertiert den Inhalt eines Objekts in eine Zahl und gibt die Zahl zurück. Erwartet den Objektinhalt als Parameter. Wenn sich der übergebene Parameter nicht als Zahl interpretieren läßt, wird `NaN` (Not a Number) zurückgegeben.
Vor allem brauchbar in Verbindung mit dem date-Objekt.

### Beispiel:

    <html><head><title>Test</title>
    </head><body>
    <script language="JavaScript">
     var d = new Date ("March 15, 1998 08:27:00");
     document.write(Number(d));
    </script></body></html>

### Erläuterung:

Das Beispiel definiert ein neues Datumobjekt und initialisiert es mit einem Wert im GMT-Format. Das Datumobjekt wird in der Variablen `d` gespeichert. Anschließend wird diese Variable der Funktion `Number()` als Parameter übergeben. Die Funktion `Number()` hab dabei die gleiche Wirkung wie die Objektmethode `d.getTime()`, d.h. es wird die Anzahl Millisekunden zwischen dem 1.1.1970 und dem in `d` gespeicherten Zeitpunkt errechnet. Im Beispiel wird das Ergebnis zur Kontrolle in die Datei geschrieben.

## String()

Konvertiert den Inhalt eines Objekts in eine Zeichenkette und gibt die Zeichenkette zurück.
Vor allem brauchbar in Verbindung mit dem date-Objekt.

### Beispiel:

    <html><head><title>Test</title>
    </head><body>
    <script language="JavaScript">
    <html><head><title>Test</title>
    </head><body>
    <script language="JavaScript">
     var d = new Date ();
     document.write(String(d));
    </script></body></html>
    </script></body></html>

### Erläuterung:

Das Beispiel definiert ein neues Datumobjekt mit dem aktuellen Zeitpunkt. Das Datumobjekt wird in der Variablen `d` gespeichert. Anschließend wird diese Variable der Funktion `String()` als Parameter übergeben. Die Funktion erzeugt daraus eine Zeichenkette, die den gespeicherten Zeitpunkt im GMT-Format darstellt. Im Beispiel wird das Ergebnis zur Kontrolle in die Datei geschrieben.

## escape()

Wandelt Steuersequenzen (Steuerzeichen mit den ASCII-Werten 0 bis 31) in ihre ASCII-Zahlenwerte um, und zwar in hexadezimaler Form. Setzt vor jeden Wert das Trennzeichen "%" und gibt die so erzeugte Zeichenkette zurück. Bei anderen Zeichen als Steuerzeichen gibt `escape()` die Zeichen unverändert zurück. Es handelt sich also um eine Funktion, die Steuerzeichen aus Werten entfernt und in Zeichenfolgen übersetzt.

### Beispiel:

    <html><head><title>Test</title>
    </head><body>
    <script language="JavaScript">
    var Beispiel = "\n\r\t";
    document.write(escape(Beispiel));
    </script></body></html>

### Erläuterung:

Das Beispiel definiert eine Variable `Beispiel`, der verschiedene Steuerzeichen zugewiesen werden (siehe dazu den Abschnitt über Steuerzeichen). Diese Variable wird der Funktion `escape()` als Parameter übergeben. Das Ergebnis wird zur Kontrolle in die Datei geschrieben.

## unescape()

Wandelt alle Zeichen der zu übergebenden Zeichenkette in normale ASCII-Zeichen um und gibt die so erzeugte Zeichenkette zurück. Die zu übergebende Zeichenkette muß für jedes umzuwandelnde Zeichen ein Prozentzeichen (%) und den Hexadezimalwert des Zeichens in der ASCII-Zeichentabelle enthalten.
Geeignet z.B. für Verschlüsselungsoperationen mit Hilfe von JavaScript

### Beispiel:

    <html><head><title>Test</title>
    </head><body>
    <script language="JavaScript">
    var Beispiel = "%53%74%65%66%61%6E";
    document.write(unescape(Beispiel));
    </script></body></html>

### Erläuterung:

Das Beispiel definiert eine Variable namens `Beispiel` und weist ihr eine Zeichenkette zu. Die Zeichenkette besteht aus einer Reihenfolge von hexadezimal kodierten Zeichen. Jedes Zeichen beginnt mit einem Prozentzeichen, dahinter folgt der Hexadezimalwert des Zeichens. Diese Variable wird der Funktion `unescape()` als Parameter übergeben. Das Ergebnis wird zur Kontrolle in die Datei geschrieben. Im Beispiel wird das Wort "Stefan" erzeugt.

weiter: | Zwei Frames gleichzeitig ändern
zurück: | string

SELFHTML/Quickbar JavaScript Objekt-Referenz

© 1998 Stefan Münz, muenz@csi.com