diff options
author | Florian Merz <me@fiji-flo.de> | 2021-02-11 14:45:38 +0100 |
---|---|---|
committer | Florian Merz <me@fiji-flo.de> | 2021-02-11 14:45:38 +0100 |
commit | 4ab365b110f2f1f2b736326b7059244a32115089 (patch) | |
tree | c3c7c0219f728ade49a78c238c51cc0c8d06ebd6 /files/de/conflicting/web/javascript | |
parent | 8260a606c143e6b55a467edf017a56bdcd6cba7e (diff) | |
download | translated-content-4ab365b110f2f1f2b736326b7059244a32115089.tar.gz translated-content-4ab365b110f2f1f2b736326b7059244a32115089.tar.bz2 translated-content-4ab365b110f2f1f2b736326b7059244a32115089.zip |
unslug de: move
Diffstat (limited to 'files/de/conflicting/web/javascript')
25 files changed, 3839 insertions, 0 deletions
diff --git a/files/de/conflicting/web/javascript/reference/global_objects/arraybuffer/index.html b/files/de/conflicting/web/javascript/reference/global_objects/arraybuffer/index.html new file mode 100644 index 0000000000..ee766c3529 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/arraybuffer/index.html @@ -0,0 +1,69 @@ +--- +title: ArrayBuffer.prototype +slug: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/prototype +tags: + - ArrayBuffer + - JavaScript + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/ArrayBuffer +translation_of_original: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <strong><code>ArrayBuffer.prototype</code></strong> Eigenschaft repräsentiert den Prototyp für das {{jsxref("ArrayBuffer")}} Objekt.</p> + +<div>{{js_property_attributes(0,0,0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p><code>ArrayBuffer</code> Instanzen erben von <code>ArrayBuffer.prototype</code>. Wie bei allen Konstruktoren, kann der Prototype des Konstruktorobjekts geändert werden, um Änderungen für alle <code>ArrayBuffer</code> Instanzen zu übernehmen.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt>ArrayBuffer.prototype.constructor</dt> + <dd>Spezifiziert die Funktion, die das Prototypeobjekt erstellt. Der Initialwert ist der eingebaute Standard-<code>ArrayBuffer</code>-Konstruktor.</dd> + <dt>{{jsxref("ArrayBuffer.prototype.byteLength")}} {{readonlyInline}}</dt> + <dd>Die größe, in Bytes, des Arrays. Dieser wird bei der Erstellung des Arrays ermittelt und kan nicht geändert werden.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<dl> + <dt>{{jsxref("ArrayBuffer.prototype.slice()")}}</dt> + <dd>Gibt einen neuen <code>ArrayBuffer</code> zurück, welcher eine Kopie der Bytes des eigentlichen <code>ArrayBuffer</code> einthält. Die Kopie geht von <code>begin</code> (inklusiv) bis <code>end</code> (exclusiv). Wenn einer der Werte negativ ist, referenziert er auf den Index vom Ende des Arrays an und nicht vom Beginn des Arrays.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spzifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-arraybuffer.prototype', 'ArrayBuffer.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-arraybuffer.prototype', 'ArrayBuffer.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + + + +<p>{{Compat("javascript.builtins.ArrayBuffer.prototype")}}</p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("ArrayBuffer")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/boolean/index.html b/files/de/conflicting/web/javascript/reference/global_objects/boolean/index.html new file mode 100644 index 0000000000..62a430fac2 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/boolean/index.html @@ -0,0 +1,84 @@ +--- +title: Boolean.prototype +slug: Web/JavaScript/Reference/Global_Objects/Boolean/prototype +tags: + - Boolean + - JavaScript + - Property + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Boolean +translation_of_original: Web/JavaScript/Reference/Global_Objects/Boolean/prototype +--- +<div>{{JSRef}}</div> + +<div>Die <strong><code>Boolean.prototype</code></strong> Eigenschaft repräsentiert den Prototypen des {{jsxref("Boolean")}} Konstruktors.</div> + +<div> </div> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<div>{{EmbedInteractiveExample("pages/js/boolean-constructor.html")}}</div> + + + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>{{jsxref("Boolean")}} Instanzen ergen von from <code>Boolean.prototype</code>. Man kann das prototype Objekt benutzen, um Eigenschaften und Methoden zu allen {{jsxref("Boolean")}} Instanzen hinzuzufügen.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>Boolean.prototype.constructor</code></dt> + <dd>Gibt die Funktion, die einen Instanz des Prototypen erstellt zurück. Im Standardfall ist das die Funktion {{jsxref("Boolean")}}.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<dl> + <dt>{{jsxref("Boolean.prototype.toSource()")}} {{non-standard_inline}}</dt> + <dd>Gibt den Quelltext des {{jsxref("Boolean")}} Objektes als String zurück. Man kann diesen String benutzen um ein gleiches Objekt zu erstellen. Diese Methode überschreibt die {{jsxref("Object.prototype.toSource()")}} Methode.</dd> + <dt>{{jsxref("Boolean.prototype.toString()")}}</dt> + <dd>Gibt einen String <code>"true"</code> oder <code>"false"</code> zurück, abhängig vom Wert des Objektes. Diese Methode überschreibt die {{jsxref("Object.prototype.toString()")}} Methode.</dd> + <dt>{{jsxref("Boolean.prototype.valueOf()")}}</dt> + <dd>Gibt einen primitiven Wert des {{jsxref("Boolean")}} Objektes zurück. Diese Methode überschreibt die {{jsxref("Object.prototype.valueOf()")}} Methode.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initiale Definition. Implementiert in JavaScript 1.0.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.6.3.1', 'Boolean.prototype')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-boolean.prototype', 'Boolean.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-boolean.prototype', 'Boolean.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.Boolean.prototype")}}</p> +</div> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/dataview/index.html b/files/de/conflicting/web/javascript/reference/global_objects/dataview/index.html new file mode 100644 index 0000000000..e03aff8a8d --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/dataview/index.html @@ -0,0 +1,110 @@ +--- +title: DataView.prototype +slug: Web/JavaScript/Reference/Global_Objects/DataView/prototype +tags: + - DataView + - JavaScript + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/DataView +translation_of_original: Web/JavaScript/Reference/Global_Objects/DataView/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <code><strong>DataView</strong></code><strong><code>.prototype</code></strong> Eigenschaft repräsentiert den Prototypen für das {{jsxref("DataView")}} Objekt.</p> + +<div>{{js_property_attributes(0,0,0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p><code>DataView</code> Instanzen erben von <code>DataView.prototype</code>. Wie bei allen Konstruktoren, können Änderungen am Prototypen Änderungen in allen <code>DataView</code> Instanzen zur folge haben.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>DataView.prototype.constructor</code></dt> + <dd>Spezifiziert die Funktion, die ein Objekt des Prototypen erstellt. Der initialwert ist der Standard eingebaute <code>DataView</code> Konstruktor</dd> + <dt>{{jsxref("DataView.prototype.buffer")}} {{readonlyInline}}</dt> + <dd>Der {{jsxref("ArrayBuffer")}}, der von dieser Ansicht repräsentiert wird. Wird bei der Erstellung erzeugt und deswegen kann nur lesend darauf zugegriffen werden.</dd> + <dt>{{jsxref("DataView.prototype.byteLength")}} {{readonlyInline}}</dt> + <dd>Die Länge (in Bytes) von dieser Ansicht, von Beginn des {{jsxref("ArrayBuffer")}}. Wird bei der Erstellung erzeugt und deswegen kann nur lesend darauf zugegriffen werden.</dd> + <dt>{{jsxref("DataView.prototype.byteOffset")}} {{readonlyInline}}</dt> + <dd>Das Offset (in Bytes) von dieser Ansicht, von Beginn des {{jsxref("ArrayBuffer")}}. Wird bei der Erstellung erzeugt und deswegen kann nur lesend darauf zugegriffen werden.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<h3 id="Lesend">Lesend</h3> + +<dl> + <dt>{{jsxref("DataView.prototype.getInt8()")}}</dt> + <dd>Gibt eine 8-Bit ganze Zahl mit Vorzeichen (byte) eines spezifizierten Byte-Offsets vom Start der Ansicht zurück.</dd> + <dt>{{jsxref("DataView.prototype.getUint8()")}}</dt> + <dd>Gibt eine 8-Bit vorzeichenlose ganze Zahl (unsigned byte) eines spezifizierten Byte-Offsets vom Start der Ansicht zurück.</dd> + <dt>{{jsxref("DataView.prototype.getInt16()")}}</dt> + <dd>Gibt eine 16-Bit ganze Zahl mit Vorzeichen (short) eines spezifizierten Byte-Offsets vom Start der Ansicht zurück.</dd> + <dt>{{jsxref("DataView.prototype.getUint16()")}}</dt> + <dd>Gibt eine 16-Bit vorzeichenlose ganze Zahl (unsigned short) eines spezifizierten Byte-Offsets vom Start der Ansicht zurück.</dd> + <dt>{{jsxref("DataView.prototype.getInt32()")}}</dt> + <dd>Gibt eine 32-Bit ganze Zahl mit Vorzeichen (long) eines spezifizierten Byte-Offsets vom Start der Ansicht zurück.</dd> + <dt>{{jsxref("DataView.prototype.getUint32()")}}</dt> + <dd>Gibt eine 32-Bit vorzeichenlose ganze Zahl (unsigned long) eines spezifizierten Byte-Offsets vom Start der Ansicht zurück.</dd> + <dt>{{jsxref("DataView.prototype.getFloat32()")}}</dt> + <dd>Gibt eine 32-Bit Gleitkommazahl mit Vorzeichen (float) eines spezifizierten Byte-Offsets vom Start der Ansicht zurück</dd> + <dt>{{jsxref("DataView.prototype.getFloat64()")}}</dt> + <dd>Gibt eine 64-Bit Gleitkommazahl mit Vorzeichen (double) eines spezifizierten Byte-Offsets vom Start der Ansicht zurück</dd> +</dl> + +<h3 id="Schreibend">Schreibend</h3> + +<dl> + <dt>{{jsxref("DataView.prototype.setInt8()")}}</dt> + <dd>Speichert eine ganze 8-Bit Zahl mit Vorzeichen (byte) an einem spezifizierten Offset vom Start der Ansicht.</dd> + <dt>{{jsxref("DataView.prototype.setUint8()")}}</dt> + <dd>Speichert eine ganze vorzeichenlose 8-Bit Zahl (unsigned byte) an einem spezifizierten Offset vom Start der Ansicht.</dd> + <dt>{{jsxref("DataView.prototype.setInt16()")}}</dt> + <dd>Speichert eine ganze 16-Bit Zahl mit Vorzeichen (short) an einem spezifizierten Offset vom Start der Ansicht.</dd> + <dt>{{jsxref("DataView.prototype.setUint16()")}}</dt> + <dd>Speichert eine ganze vorzeichenlose 16-Bit Zahl (unsigned short) an einem spezifizierten Offset vom Start der Ansicht.</dd> + <dt>{{jsxref("DataView.prototype.setInt32()")}}</dt> + <dd>Speichert eine ganze 32-Bit Zahl mit Vorzeichen (long) an einem spezifizierten Offset vom Start der Ansicht.</dd> + <dt>{{jsxref("DataView.prototype.setUint32()")}}</dt> + <dd>Speichert eine ganze vorzeichenlose 32-Bit Zahl (unsigned long) an einem spezifizierten Offset vom Start der Ansicht.</dd> + <dt>{{jsxref("DataView.prototype.setFloat32()")}}</dt> + <dd>Speichert eine 32-Bit Gleitkommazahl mit Vorzeichen (float) an einem spezifizierten Offset vom Start der Ansicht.</dd> + <dt>{{jsxref("DataView.prototype.setFloat64()")}}</dt> + <dd>Speichert eine 64-Bit Gleitkommazahl mit Vorzeichen (double) an einem spezifizierten Offset vom Start der Ansicht.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-dataview.prototype', 'DataView.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-dataview.prototype', 'DataView.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + + + +<p>{{Compat("javascript.builtins.DataView.prototype")}}</p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("DataView")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/date/index.html b/files/de/conflicting/web/javascript/reference/global_objects/date/index.html new file mode 100644 index 0000000000..ab69ff1528 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/date/index.html @@ -0,0 +1,183 @@ +--- +title: Date.prototype +slug: Web/JavaScript/Reference/Global_Objects/Date/prototype +tags: + - Date + - JavaScript + - Property + - Prototype + - Reference +translation_of: Web/JavaScript/Reference/Global_Objects/Date +translation_of_original: Web/JavaScript/Reference/Global_Objects/Date/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <strong><code>Date.prototype-</code></strong>Eigenschaft ist der Prototype für den {{jsxref("Date")}}-Konstruktor</p> + +<div>{{js_property_attributes(0, 0, 1)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>JavaScript-{{jsxref("Date")}}-Instanzen erben von <code>Date.prototype</code>. Man kann das Konstruktorprototype-Objekt ändern, um Eigenschaften und Methoden aller {{jsxref("Date")}}-Instanzen zu ändern.</p> + +<p>Für die Kompatibilität mit Jahrtausendsrechnungen (in anderen Worten, um das Jahr 2000 mit einzukalkulieren), sollte man das Jahr immer in voller Länge spezifizieren; zum Beispiel sollte 1998 und nicht 98 benutzt werden. Zur Unterstützung der Spezifizierung des vollen Jahres hat JavaScript die Methoden {{jsxref("Date.prototype.getFullYear()", "getFullYear()")}}, {{jsxref("Date.prototype.setFullYear()", "setFullYear()")}}, {{jsxref("Date.prototype.getUTCFullYear()", "getUTCFullYear()")}} und {{jsxref("Date.prototype.setUTCFullYear()", "setUTCFullYear()")}}.</p> + +<p>Mit Einführung von ECMAScript 6 ist das <code>Date.prototype</code>-Objekt ein normales Objekt. Es ist keine Instanz von {{jsxref("Date")}}.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>Date.prototype.constructor</code></dt> + <dd>Eine Funktion, die Instanzen erzeugen kann. Der {{jsxref("Date")}}-Konstruktor ist der Standard.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<h3 id="Getter">Getter</h3> + +<dl> + <dt>{{jsxref("Date.prototype.getDate()")}}</dt> + <dd>Gibt den Tag des Monats (1 - 31) eines Datums gemäß der Ortszeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getDay()")}}</dt> + <dd>Gibt den Tag der Woche (0 - 6) eines Datums gemäß der Ortszeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getFullYear()")}}</dt> + <dd>Gibt das Jahr (4 Ziffern für 4 ziffrige Jahre) eines Datums gemäß der Ortszeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getHours()")}}</dt> + <dd>Gibt die Stunde (0 - 23) eines Datums gemäß der Ortszeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getMilliseconds()")}}</dt> + <dd>Gibt die Millisekunden (0 - 999) eines Datums gemäß der Ortszeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getMinutes()")}}</dt> + <dd>Gibt die Minuten (0 - 59) eines Datums gemäß der Ortszeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getMonth()")}}</dt> + <dd>Gibt den Monat (0 - 11) eines Datums gemäß der Ortszeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getSeconds()")}}</dt> + <dd>Gibt die Sekunden (0 - 59) eines Datums gemäß der Ortszeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getTime()")}}</dt> + <dd>Gibt den nummerischen Wert eines Datums als Millisekunden seit 1. Januar 1970 00:00:00 UTC (negativ für frühere Daten) zurück.</dd> + <dt>{{jsxref("Date.prototype.getTimezoneOffset()")}}</dt> + <dd>Gibt den Zeitzonenunterschied in Minuten für die aktuelle Region zurück.</dd> + <dt>{{jsxref("Date.prototype.getUTCDate()")}}</dt> + <dd>Gibt den Tag des Monats (1 - 31) eines Datums gemäß der Weltzeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getUTCDay()")}}</dt> + <dd>Gibt den Tag der Woche (0 - 6) eines Datums gemäß der Weltzeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getUTCFullYear()")}}</dt> + <dd>Gibt das Jahr (4 Ziffern für 4 ziffrige Jahre) eines Datums gemäß der Weltzeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getUTCHours()")}}</dt> + <dd>Gibt die Stunden (0 - 23) eines Datums gemäß der Weltzeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getUTCMilliseconds()")}}</dt> + <dd>Gibt die Millisekunden (0 - 999) eines Datums gemäß der Weltzeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getUTCMinutes()")}}</dt> + <dd>Gibt die Minuten (0 - 59) eines Datums gemäß der Weltzeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getUTCMonth()")}}</dt> + <dd>Gibt den Monat (0 - 11) eines Datums gemäß der Weltzeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getUTCSeconds()")}}</dt> + <dd>Gibt die Sekunden (0 - 59) eines Datums gemäß der Weltzeit zurück.</dd> + <dt>{{jsxref("Date.prototype.getYear()")}} {{deprecated_inline}}</dt> + <dd>Gibt das Jahr (nur 2 - 3 Ziffern) eines Datums gemäß der Ortszeit zurück. Stattdessen sollte {{jsxref("Date.prototype.getFullYear()", "getFullYear()")}} benutzt werden.</dd> +</dl> + +<h3 id="Setter">Setter</h3> + +<dl> + <dt>{{jsxref("Date.prototype.setDate()")}}</dt> + <dd>Setzt den Tag des Monats eines Datums gemäß der Ortszeit.</dd> + <dt>{{jsxref("Date.prototype.setFullYear()")}}</dt> + <dd>Setzt das Jahr (4 Ziffern für vierstellige Jahre) eines Datums gemäß der Ortszeit.</dd> + <dt>{{jsxref("Date.prototype.setHours()")}}</dt> + <dd>Setzt die Stunden eines Datums gemäß der Ortszeit.</dd> + <dt>{{jsxref("Date.prototype.setMilliseconds()")}}</dt> + <dd>Setzt die Millisekunden eines Datums gemäß der Ortszeit.</dd> + <dt>{{jsxref("Date.prototype.setMinutes()")}}</dt> + <dd>Setzt die Minuten eines Datums gemäß der Ortszeit.</dd> + <dt>{{jsxref("Date.prototype.setMonth()")}}</dt> + <dd>Setzt den Monat eines Datums gemäß der Ortszeit.</dd> + <dt>{{jsxref("Date.prototype.setSeconds()")}}</dt> + <dd>Setzt die Sekunden eines Datums gemäß der Ortszeit.</dd> + <dt>{{jsxref("Date.prototype.setTime()")}}</dt> + <dd>Setzt ein {{jsxref("Date")}} Objekt auf die Zeit, mit der Anzahl der Millisekunden seit dem 1. Januar 1970 00:00:00UTC. Negative Zahlen sind für frühere Daten erlaubt.</dd> + <dt>{{jsxref("Date.prototype.setUTCDate()")}}</dt> + <dd>Setzt den Tag des Monats eines Datums gemäß der Weltzeit.</dd> + <dt>{{jsxref("Date.prototype.setUTCFullYear()")}}</dt> + <dd>Setzt das Jahr (4 Ziffern für 4 ziffrige Jahre) eines Datums gemäß der Weltzeit.</dd> + <dt>{{jsxref("Date.prototype.setUTCHours()")}}</dt> + <dd>Setzt die Stunde eines Datums gemäß der Weltzeit.</dd> + <dt>{{jsxref("Date.prototype.setUTCMilliseconds()")}}</dt> + <dd>Setzt die Millisekunden eines Datums gemäß der Weltzeit.</dd> + <dt>{{jsxref("Date.prototype.setUTCMinutes()")}}</dt> + <dd>Setzt die Minuten eines Datums gemäß der Weltzeit.</dd> + <dt>{{jsxref("Date.prototype.setUTCMonth()")}}</dt> + <dd>Setzt den Monat eines Datums gemäß der Weltzeit.</dd> + <dt>{{jsxref("Date.prototype.setUTCSeconds()")}}</dt> + <dd>Setzt die Sekunden eines Datums gemäß der Weltzeit.</dd> + <dt>{{jsxref("Date.prototype.setYear()")}} {{deprecated_inline}}</dt> + <dd>Setzt das Jahr (nur 2 - 3 Ziffern) eines Datums gemäß der Ortszeit. Stattdessen sollte {{jsxref("Date.prototype.setFullYear()", "setFullYear()")}} benutzt werden.</dd> +</dl> + +<h3 id="Konvertierungsgetter">Konvertierungsgetter</h3> + +<dl> + <dt>{{jsxref("Date.prototype.toDateString()")}}</dt> + <dd>Gibt das Datum als menschlich lesbaren String zurück (z. B. Thu Apr 12 2018). </dd> + <dt>{{jsxref("Date.prototype.toISOString()")}}</dt> + <dd>Konvertiert ein Datum zu einem String im erweiterten ISO-8601-Format.</dd> + <dt>{{jsxref("Date.prototype.toJSON()")}}</dt> + <dd>Gibt eine String-Repräsentation eines {{jsxref("Date")}}-Objektes zurück. Dabei wird die {{jsxref("Date.prototype.toISOString()", "toISOString()")}}-Methode eingesetzt. Gedacht für den Einsatz von {{jsxref("JSON.stringify()")}}.</dd> + <dt>{{jsxref("Date.prototype.toGMTString()")}} {{deprecated_inline}}</dt> + <dd>Gibt eine String-Repräsentation eines {{jsxref("Date")}}-Objektes auf Basis der GMT-(UT)-Zeitzone zurück. Stattdessen sollte {{jsxref("Date.prototype.toUTCString()", "toUTCString()")}} eingesetzt werden.</dd> + <dt>{{jsxref("Date.prototype.toLocaleDateString()")}}</dt> + <dd>Gibt einen String mit ortssensitiver Repräsentation eines Datums zurück. Dieses Datum basiert auf den Systemeinstellungen.</dd> + <dt>{{jsxref("Date.prototype.toLocaleFormat()")}} {{non-standard_inline}}</dt> + <dd>Konvertiert ein Datum zu einem String mithilfe eines Formatierungsstrings.</dd> + <dt>{{jsxref("Date.prototype.toLocaleString()")}}</dt> + <dd>Gibt einen String mit ortssensitiver Repräsentation eines Datums zurück. Diese Method überschreibt die {{jsxref("Object.prototype.toLocaleString()")}}-Methode.</dd> + <dt>{{jsxref("Date.prototype.toLocaleTimeString()")}}</dt> + <dd>Gibt einen String mit ortssensitiver Repräsentation der Zeit eines Datums zurück. Diese Zeit basiert auf den Systemeinstellungen.</dd> + <dt>{{jsxref("Date.prototype.toSource()")}} {{non-standard_inline}}</dt> + <dd>Gibt einen String-Repräsentation des Quelltextes zurück (gleich dem {{jsxref("Date")}}-Objekt). Man kann diese Methode einsetzen um ein neues Objekt zu erstellen. Diese Methode überschreibt die {{jsxref("Object.prototype.toSource()")}}-Methode</dd> + <dt>{{jsxref("Date.prototype.toString()")}}</dt> + <dd>Gibt eine String-Repräsentation eines {{jsxref("Date")}}-Objektes zurück. Diese Methode überschreibt die {{jsxref("Object.prototype.toString()")}} Methode.</dd> + <dt>{{jsxref("Date.prototype.toTimeString()")}}</dt> + <dd>Gibt die Zeit eines Datums als menschlich lesbaren String zurück.</dd> + <dt>{{jsxref("Date.prototype.toUTCString()")}}</dt> + <dd>Konvertiert das Datum zu einem String unter Einsatz der UTC-Zeitzone.</dd> + <dt>{{jsxref("Date.prototype.valueOf()")}}</dt> + <dd>Gibt ein primitiven Wert eines {{jsxref("Date")}}-Objektes zurück. Diese Methode überschreibt die {{jsxref("Object.prototype.valueOf()")}}-Methode.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Specification</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initiale Definition. Implementiert in JavaScript 1.1.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.9.5', 'Date.prototype')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-properties-of-the-date-prototype-object', 'Date.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-properties-of-the-date-prototype-object', 'Date.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("javascript.builtins.Date.prototype")}}</p> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/error/index.html b/files/de/conflicting/web/javascript/reference/global_objects/error/index.html new file mode 100644 index 0000000000..2a48748822 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/error/index.html @@ -0,0 +1,114 @@ +--- +title: Error.prototype +slug: Web/JavaScript/Reference/Global_Objects/Error/prototype +tags: + - Error + - JavaScript + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Error +translation_of_original: Web/JavaScript/Reference/Global_Objects/Error/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <code><strong>Error.prototype</strong></code> Eigenschaft repräsentiert den Prototypen für den {{jsxref("Error")}} Konstruktor.</p> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Alle {{jsxref("Error")}} Instanzen und Instanzen von {{jsxref("Global_Objects/Error", "nicht generischen Errors", "#Error_types", 1)}} erben von <code>Error.prototype</code>. Wie bei jeder Konstruktorfunktion, kann man den Prototypen des Konstruktors einsetzen, um Eigenschaften oder Methoden bei allen erstellten Instanzen hinzuzufügen.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<h3 id="Standard-Eigenschaften">Standard-Eigenschaften</h3> + +<dl> + <dt><code>Error.prototype.constructor</code></dt> + <dd>Spezifiziert die Funktion, die einen Prototypen einer Instanz erstellt.</dd> + <dt>{{jsxref("Error.prototype.message")}}</dt> + <dd>Errornachricht.</dd> + <dt>{{jsxref("Error.prototype.name")}}</dt> + <dd>Errorname.</dd> +</dl> + +<h3 id="Vendor-spezifische_Erweiterungen">Vendor-spezifische Erweiterungen</h3> + +<div>{{non-standard_header}}</div> + +<h4 id="Microsoft">Microsoft</h4> + +<dl> + <dt>{{jsxref("Error.prototype.description")}} {{non-standard_inline}}</dt> + <dd>Errorbeschreibung. Ist das gleiche wie {{jsxref("Error.prototype.message")}}</dd> + <dt>{{jsxref("Error.prototype.number")}} {{non-standard_inline}}</dt> + <dd>Errornummer.</dd> +</dl> + +<h4 id="Mozilla">Mozilla</h4> + +<dl> + <dt>{{jsxref("Error.prototype.fileName")}} {{non-standard_inline}}</dt> + <dd>Pfad zu der Datei, die der der Error ausgelöst wurde.</dd> + <dt>{{jsxref("Error.prototype.lineNumber")}} {{non-standard_inline}}</dt> + <dd>Zeilennummer in der Datei, in der der Error ausgelöst wurde.</dd> + <dt>{{jsxref("Error.prototype.columnNumber")}} {{non-standard_inline}}</dt> + <dd>Spaltennummer in der Zeile, in der der Error ausgelöst wurde.</dd> + <dt>{{jsxref("Error.prototype.stack")}} {{non-standard_inline}}</dt> + <dd>Stacktrace.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<dl> + <dt>{{jsxref("Error.prototype.toSource()")}} {{non-standard_inline}}</dt> + <dd>Gibt einen String zurück, der den Quelltext eines spezifischen {{jsxref("Error")}} Objektes beinhaltet. Man kann diesen einsetzen, um ein neues Objekt zu erstellen. Überschreibt die {{jsxref("Object.prototype.toSource()")}} Methode.</dd> + <dt>{{jsxref("Error.prototype.toString()")}}</dt> + <dd>Gibt einen String zurück, der das Objekt repräsentiert. Überschreibt die {{jsxref("Object.prototype.toString()")}} Methode.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initiale Definition. Implementiert in JavaScript 1.1.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.11.3.1', 'Error')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-error.prototype', 'Error')}}</td> + <td>{{Spec2('ES6')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-error.prototype', 'Error')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.Error.prototype")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Error")}}</li> + <li>{{jsxref("Object.prototype")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/evalerror/index.html b/files/de/conflicting/web/javascript/reference/global_objects/evalerror/index.html new file mode 100644 index 0000000000..7de0a353bc --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/evalerror/index.html @@ -0,0 +1,90 @@ +--- +title: EvalError.prototype +slug: Web/JavaScript/Reference/Global_Objects/EvalError/prototype +tags: + - Error + - EvalError + - JavaScript + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/EvalError +translation_of_original: Web/JavaScript/Reference/Global_Objects/EvalError/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <code><strong>EvalError.prototype</strong></code> Eigenschaft repräsentiert den Prototypen des {{jsxref("EvalError")}} Konstruktors.</p> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Alle {{jsxref("EvalError")}} Instanzen erben von <code>EvalError.prototype</code>. Man kann den Prototypen benutzen, um Eigenschaften oder Methoden für alle Instanzen hinzuzufügen.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>EvalError.prototype.constructor</code></dt> + <dd>Spezifiziert die Funktion, die einen Instanzprototypen erstellt.</dd> + <dt>{{jsxref("Error.prototype.message", "EvalError.prototype.message")}}</dt> + <dd>Fehlernachricht. Obwohl ECMA-262 spezifiziert, dass {{jsxref("EvalError")}} seine eigene <code>message</code> Eigenschaft haben soll, wird diese in <a href="/de/docs/Mozilla/Projects/SpiderMonkey">SpiderMonkey</a> von {{jsxref("Error.prototype.message")}} geerbt.</dd> + <dt>{{jsxref("Error.prototype.name", "EvalError.prototype.name")}}</dt> + <dd>Fehlername. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.fileName", "EvalError.prototype.fileName")}}</dt> + <dd>Pfad zur Datei, die der der Fehler ausgelöst hat. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.lineNumber", "EvalError.prototype.lineNumber")}}</dt> + <dd>Zeilennummer in der Datei, in der der Fehler ausgelöst wurde. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.columnNumber", "EvalError.prototype.columnNumber")}}</dt> + <dd>Dpaltennummer in der Zeile, in der der Fehler ausgelöst wurde. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.stack", "EvalError.prototype.stack")}}</dt> + <dd>Stacktrace. Geerbt von {{jsxref("Error")}}.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<p>Obwohl des {{jsxref("EvalError")}} Prototypobjekt keine eigene Methode enthält, erben {{jsxref("EvalError")}} Instanzen einige Methoden durch die Prototypenkette.</p> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES3')}}</td> + <td>{{Spec2('ES3')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.11.7.6', 'NativeError.prototype')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-nativeerror.prototype', 'NativeError.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-nativeerror.prototype', 'NativeError.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.EvalError")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Error.prototype")}}</li> + <li>{{jsxref("Function.prototype")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/function/index.html b/files/de/conflicting/web/javascript/reference/global_objects/function/index.html new file mode 100644 index 0000000000..44598455e8 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/function/index.html @@ -0,0 +1,100 @@ +--- +title: Function.prototype +slug: Web/JavaScript/Reference/Global_Objects/Function/prototype +tags: + - Function + - JavaScript + - Property + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Function +translation_of_original: Web/JavaScript/Reference/Global_Objects/Function/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <code><strong>Function.prototype</strong></code> Eigenschaft repräsentiert das {{jsxref("Function")}} Prototyp Objekt.</p> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>{{jsxref("Function")}} Objekte erben von <code>Function.prototype</code>. <code>Function.prototype</code> kann nicht modifiziert werden.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt>{{jsxref("Function.arguments")}} {{deprecated_inline}}</dt> + <dd>Ein Array, welches die der Funktion übergebenen Parameter enthält. Dieses ist veraltet als Eigenschaft von {{jsxref("Function")}}. Stattdessen sollte das {{jsxref("Functions/arguments", "arguments")}} Objekt in einer Funktion benutzt werden</dd> + <dt><s class="obsoleteElement">{{jsxref("Function.arity")}} {{obsolete_inline}}</s></dt> + <dd><s class="obsoleteElement">Wurde benutzt, um die Anzahl der erwarteten Argumente einer Funktion einzustellen, ist jedoch entfernt. Stattdessen kann die {{jsxref("Function.length", "length")}} Eigenschaft genutzt werden.</s></dd> + <dt>{{jsxref("Function.caller")}} {{non-standard_inline}}</dt> + <dd>Spezifizert die Funktion, die die aktuelle Funktion aufgerufen hat.</dd> + <dt>{{jsxref("Function.length")}}</dt> + <dd>Spezifizert die Anzahl der Parameter, die eine Funktion erwartet.</dd> + <dt>{{jsxref("Function.name")}}</dt> + <dd>Der Name einer Funktion.</dd> + <dt>{{jsxref("Function.displayName")}} {{non-standard_inline}}</dt> + <dd>Der angezeigte Name einer Funktion.</dd> + <dt><code>Function.prototype.constructor</code></dt> + <dd>Spezifiziert die Funktion, die ein Objekt Prototyp erstellt. Mehr Informationen bei {{jsxref("Object.prototype.constructor")}}.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<dl> + <dt>{{jsxref("Function.prototype.apply()")}}</dt> + <dd>Führt eine Funktion aus und setzt das <em>this</em> Objekt mit einem übergebenen wert. Parameter können in einem {{jsxref("Array")}} Objekt übergeben werden.</dd> + <dt>{{jsxref("Function.prototype.bind()")}}</dt> + <dd><span id="result_box" lang="de"><span>Erstellt eine neue Funktion, die beim Aufruf einen angegebenen Wert für <em>this</em> hat, wobei die Argumentfolge vor dem Aufruf der neuen Funktion fest steht.</span></span></dd> + <dt>{{jsxref("Function.prototype.call()")}}</dt> + <dd>Führt eine Funktion aus und setzt <em>this</em> auf einen übergebenen Wert. Parameter können übergeben werden.</dd> + <dt>{{jsxref("Function.prototype.isGenerator()")}} {{non-standard_inline}}</dt> + <dd>Gibt <code>true</code> zurück, wenn die Funktion ein <a href="/de/docs/Web/JavaScript/Guide/Iterators_and_Generators">Generator</a> ist, anderfalls <code>false</code>.</dd> + <dt>{{jsxref("Function.prototype.toSource()")}} {{non-standard_inline}}</dt> + <dd>Gibt eine Stringrepräsentation des Quelltextes einer Funktion zurück. Sie überschreibt die {{jsxref("Object.prototype.toSource")}} Methode.</dd> + <dt>{{jsxref("Function.prototype.toString()")}}</dt> + <dd>Gibt eine Stringrepräsentation des Quelltextes einer Funktion zurück. Sie überschreibt die {{jsxref("Object.prototype.toString")}} Methode.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initiale Definition. Implementiert in JavaScript 1.1</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.3.5.2', 'Function.prototype')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-function-instances-prototype', 'Function.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-function-instances-prototype', 'Function.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.Function.prototype")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Function")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/generatorfunction/index.html b/files/de/conflicting/web/javascript/reference/global_objects/generatorfunction/index.html new file mode 100644 index 0000000000..e514a8c9d7 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/generatorfunction/index.html @@ -0,0 +1,67 @@ +--- +title: GeneratorFunction.prototype +slug: Web/JavaScript/Reference/Global_Objects/GeneratorFunction/prototype +tags: + - ECMAScript 2015 + - GeneratorFunction + - Iterator + - JavaScript + - Property + - Prototype + - Reference +translation_of: Web/JavaScript/Reference/Global_Objects/GeneratorFunction +translation_of_original: Web/JavaScript/Reference/Global_Objects/GeneratorFunction/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <code><strong>GeneratorFunction.prototype</strong></code> Eigenschaft repräsentiert den Prototypen des {{jsxref("GeneratorFunction")}} Objektes.</p> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>{{jsxref("GeneratorFunction")}} Objekt erbt von <code>GeneratorFunction.prototype</code>. <code>GeneratorFunction.prototype</code> kann nicht verändert werden.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code><strong>GeneratorFunction.constructor</strong></code></dt> + <dd>Der initiale Wert von {{jsxref("GeneratorFunction")}}.</dd> + <dt><code><strong>GeneratorFunction.prototype.prototype</strong></code></dt> + <dd>Der Wert ist <code>%GeneratorPrototype%</code>.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES2015', '#sec-generatorfunction.prototype', 'GeneratorFunction.prototype')}}</td> + <td>{{Spec2('ES2015')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-generatorfunction.prototype', 'GeneratorFunction.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.GeneratorFunction.prototype")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("GeneratorFunction")}}</li> + <li>{{jsxref("Function")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/internalerror/index.html b/files/de/conflicting/web/javascript/reference/global_objects/internalerror/index.html new file mode 100644 index 0000000000..8ed0c2de4b --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/internalerror/index.html @@ -0,0 +1,62 @@ +--- +title: InternalError.prototype +slug: Web/JavaScript/Reference/Global_Objects/InternalError/prototype +tags: + - Error + - InternalError + - JavaScript + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/InternalError +translation_of_original: Web/JavaScript/Reference/Global_Objects/InternalError/prototype +--- +<div>{{JSRef}} {{non-standard_header}}</div> + +<p>Die <code><strong>InternalError.prototype</strong></code> Eigenschaft repräsentiert den Prototypen des {{jsxref("InternalError")}} Konstruktors.</p> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Alle {{jsxref("InternalError")}} Instanzen erben von <code>InternalError.prototype</code>. Man kann den Prototypen benutzt, um Eigenschaften oder Methoden für alle Instanzen hinzuzufügen.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>InternalError.prototype.constructor</code></dt> + <dd>Spezifiziert die Funktion, die einen Instanzen Prototyp erstellt.</dd> + <dt>{{jsxref("Error.prototype.message", "InternalError.prototype.message")}}</dt> + <dd>Fehlermeldung. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.name", "InternalError.prototype.name")}}</dt> + <dd>Fehlername. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.fileName", "InternalError.prototype.fileName")}}</dt> + <dd>Pfad zur Datei, in der der Fehler auftritt. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.lineNumber", "InternalError.prototype.lineNumber")}}</dt> + <dd>Zeilennummer, in der Datei, in der der Fehler auftritt. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.columnNumber", "InternalError.prototype.columnNumber")}}</dt> + <dd>Spaltennummer, in der Zeile, in der der Fehler auftritt. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.stack", "InternalError.prototype.stack")}}</dt> + <dd>Stacktrace. Geerbt von {{jsxref("Error")}}.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<p>Obwohl das {{jsxref("InternalError")}} Prototypobjekt keine eigenen Methoden besitzt, erben {{jsxref("InternalError")}} Instanzen einige Methoden durch die Prototypenkette.</p> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<p>In keiner Spezifikation enthalten.</p> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.InternalError")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Error.prototype")}}</li> + <li>{{jsxref("Function.prototype")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/intl/collator/index.html b/files/de/conflicting/web/javascript/reference/global_objects/intl/collator/index.html new file mode 100644 index 0000000000..2b041c3f26 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/intl/collator/index.html @@ -0,0 +1,80 @@ +--- +title: Intl.Collator.prototype +slug: Web/JavaScript/Reference/Global_Objects/Intl/Collator/prototype +tags: + - Collator + - Internationalization + - JavaScript + - Property + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Intl/Collator +translation_of_original: Web/JavaScript/Reference/Global_Objects/Intl/Collator/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <strong><code>Intl.Collator.prototype</code></strong> Eigenschaft repräsentiert das Prototypobjekt für den {{jsxref("Collator", "Intl.Collator")}} Konstruktor.</p> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Siehe im Beitrag {{jsxref("Collator")}} für eine Beschreibung von <code>Intl.Collator</code> Instanzen.</p> + +<p>{{jsxref("Collator", "Intl.Collator")}} Instanzen erben von <code>Intl.Collator.prototype</code>. Änderungen am Prototypobjekt werden an alle {{jsxref("Collator", "Intl.Collator")}} Instanzen vererbt.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt>{{jsxref("Collator.compare", "Intl.Collator.prototype.compare")}}</dt> + <dd>Getter; gibt eine Funktion zurück, die zwei Strings abhängig vom der Sortierreihenfolge des {{jsxref("Global_Objects/Collator", "Intl.Collator")}} Objektes vergleicht.</dd> + <dt><code>Intl.Collator.prototype.constructor</code></dt> + <dd>Eine Referenz zu {{jsxref("Global_Objects/Collator", "Intl.Collator")}}.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<dl> + <dt>{{jsxref("Collator.resolvedOptions", "Intl.Collator.prototype.resolvedOptions()")}}</dt> + <dd>Gibt ein neues Objekt mit Eigenschaften zu Gebiets- und Collation-Optionen, die bei der Initialisierung des Objekte ermittelt wurden.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES Int 1.0', '#sec-10.2.1', 'Intl.Collator.prototype')}}</td> + <td>{{Spec2('ES Int 1.0')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ES Int 2.0', '#sec-10.2.1', 'Intl.Collator.prototype')}}</td> + <td>{{Spec2('ES Int 2.0')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES Int Draft', '#sec-Intl.Collator.prototype', 'Intl.Collator.prototype')}}</td> + <td>{{Spec2('ES Int Draft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.Intl.Collator.prototype")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Collator", "Intl.Collator")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/intl/datetimeformat/index.html b/files/de/conflicting/web/javascript/reference/global_objects/intl/datetimeformat/index.html new file mode 100644 index 0000000000..ab0a86d286 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/intl/datetimeformat/index.html @@ -0,0 +1,84 @@ +--- +title: Intl.DateTimeFormat.prototype +slug: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/prototype +tags: + - DateTimeFormat + - Internationalization + - JavaScript + - Property + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat +translation_of_original: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/prototype +--- +<div>{{JSRef}}</div> + +<div>Die <strong><code>Intl.DateTimeFormat.prototype</code></strong> Eigenschaft ist ein Prototyp Objekt für den {{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}} Konstruktor.</div> + +<div> </div> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Für eine Beschreibung von <code>Intl.DateTimeFormat</code> Instanzen siehe im Artikel {{jsxref("DateTimeFormat")}} nach.</p> + +<p>{{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}} Instanzen erben von <code>Intl.DateTimeFormat.prototype</code>. Änderungen in der Eigenschaft <code>prototype</code> wirken sich auf alle Instanzen von {{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}} aus.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>Intl.DateTimeFormat.prototype.constructor</code></dt> + <dd>Eine Referenz zu {{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}}.</dd> + <dt>{{jsxref("DateTimeFormat.format", "Intl.DateTimeFormat.prototype.format")}}</dt> + <dd>Getter, der eine Funktion, die für das Formatieren von Datums- und Zeitangaben nach den Optionen des {{jsxref("DateTimeFormat", "DateTimeFormat")}} ermöglicht, wird zurückgegeben.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<dl> + <dt>{{jsxref("DateTimeFormat.formatToParts", "Intl.DateTimeFormat.prototype.formatToParts()")}}</dt> + <dd>Gibt ein {{jsxref("Array")}} von Objekten zurück, die den formatierten String in Teilen repräsentiert. Das kann eingesetzt werden, um ein benutzerdefiniertes Format zu erstellen.</dd> + <dt>{{jsxref("DateTimeFormat.resolvedOptions", "Intl.DateTimeFormat.prototype.resolvedOptions()")}}</dt> + <dd>Gibt ein neues Objekt mit den Eigenschaften der Sprache und des Formates zum Erstellungszeitpunkt des Objektes zurück.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES Int 1.0', '#sec-12.2.1', 'Intl.DateTimeFormat.prototype')}}</td> + <td>{{Spec2('ES Int 1.0')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ES Int 2.0', '#sec-12.2.1', 'Intl.DateTimeFormat.prototype')}}</td> + <td>{{Spec2('ES Int 2.0')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES Int Draft', '#sec-Intl.DateTimeFormat.prototype', 'Intl.DateTimeFormat.prototype')}}</td> + <td>{{Spec2('ES Int Draft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.Intl.DateTimeFormat.prototype")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/intl/numberformat/index.html b/files/de/conflicting/web/javascript/reference/global_objects/intl/numberformat/index.html new file mode 100644 index 0000000000..142aefbfcc --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/intl/numberformat/index.html @@ -0,0 +1,82 @@ +--- +title: Intl.NumberFormat.prototype +slug: Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/prototype +tags: + - Internationalization + - JavaScript + - NumberFormat + - Property + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat +translation_of_original: Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <strong><code>Intl.NumberFormat.prototype</code></strong> Eigenschaft repräsentiert das Prototypobjekt für einen {{jsxref("NumberFormat", "Intl.NumberFormat")}} Konstruktor.</p> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Siehe {{jsxref("NumberFormat")}} für eine Beschreibung von <code>Intl.NumberFormat</code> Instanzen.</p> + +<p>{{jsxref("NumberFormat", "Intl.NumberFormat")}} Instanzen erben von <code>Intl.NumberFormat.prototype</code>. Veränderungen am Prototypobjekt werden an alle {{jsxref("NumberFormat", "Intl.NumberFormat")}} Instanzen vererbt.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>Intl.NumberFormat.prototype.constructor</code></dt> + <dd>Eine Referenz zu <code>Intl.NumberFormat</code>.</dd> + <dt>{{jsxref("NumberFormat.format", "Intl.NumberFormat.prototype.format")}}</dt> + <dd>Getter; gibt eine Funktion zurück, die eine Zahl nach den Sprach- und Formatierungsoptionen dieses {{jsxref("NumberFormat")}} Objektes formatiert.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<dl> + <dt>{{jsxref("NumberFormat.formatToParts", "Intl.NumberFormat.prototype.formatToParts()")}}</dt> + <dd>Gibt ein {{jsxref("Array")}} mit Objekten zurück, welche die Repräsentation des Zahlenstrings in Teilen enthalten, die für sprachsicheres Formatieren genutzt werden können.</dd> + <dt>{{jsxref("NumberFormat.resolvedOptions", "Intl.NumberFormat.prototype.resolvedOptions()")}}</dt> + <dd>Gibt ein neues Objekt mit eigenschaften zurück, die Sprach- und Formatierungsoptionen enthält, die bei der Initialisierung des Objektes errechnet wurden.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Komment</th> + </tr> + <tr> + <td>{{SpecName('ES Int 1.0', '#sec-11.2.1', 'Intl.NumberFormat.prototype')}}</td> + <td>{{Spec2('ES Int 1.0')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ES Int 2.0', '#sec-11.2.1', 'Intl.NumberFormat.prototype')}}</td> + <td>{{Spec2('ES Int 2.0')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES Int Draft', '#sec-Intl.NumberFormat.prototype', 'Intl.NumberFormat.prototype')}}</td> + <td>{{Spec2('ES Int Draft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.Intl.NumberFormat.prototype")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("NumberFormat", "Intl.NumberFormat")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/map/index.html b/files/de/conflicting/web/javascript/reference/global_objects/map/index.html new file mode 100644 index 0000000000..35399160b1 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/map/index.html @@ -0,0 +1,87 @@ +--- +title: Map.prototype +slug: Web/JavaScript/Reference/Global_Objects/Map/prototype +tags: + - JavaScript + - Map + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Map +translation_of_original: Web/JavaScript/Reference/Global_Objects/Map/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <code><strong>Map</strong></code><strong><code>.prototype</code></strong> Eigenschaft repräsentiert den Prototyp für den {{jsxref("Map")}} Konstruktor.</p> + +<div>{{js_property_attributes(0,0,0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>{{jsxref("Map")}} Instanzen erben von {{jsxref("Map.prototype")}}. Man kann das prototype Objekt des Konstruktors nutzen, um Eigenschaften oder Methoden für alle <code>map</code> Instanzen hinzuzufügen.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>Map.prototype.constructor</code></dt> + <dd>Gibt die Funktion zurück, die einen Instanzenprototype erstellt. Der Standardwert ist die {{jsxref("Map")}} Funktion.</dd> + <dt>{{jsxref("Map.prototype.size")}}</dt> + <dd>Gibt die Anzahl an Schlüssel/Werte-Paaren in dem <code>Map</code> Objekt zurück.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<dl> + <dt>{{jsxref("Map.prototype.clear()")}}</dt> + <dd>Entfernt alle Schlüssel/Werte-Paare von dem <code>Map</code> Objekt.</dd> + <dt>{{jsxref("Map.delete", "Map.prototype.delete(schlüssel)")}}</dt> + <dd>Gibt <code>true</code> zurück, wenn ein Element im <code>Map</code> Objekt existiert und gelöscht wird, oder <code>false</code> wenn das Element nicht existiert. <code>Map.prototype.has(schlüssel)</code> wird danach <code>false</code> zurückgeben.</dd> + <dt>{{jsxref("Map.prototype.entries()")}}</dt> + <dd>Gibt ein neues <code>Iterator</code> Objekt mit allen <strong><code>[Schlüssel, Wert]</code> Paaren als Array</strong> von jedem Element in dem <code>Map</code> Objekt in Einfügereihenfolge zurück.</dd> + <dt>{{jsxref("Map.forEach", "Map.prototype.forEach(callbackFn[, thisArg])")}}</dt> + <dd>Ruft <code>callbackFn</code> einmal für jedes Schlüssel/Wert Paar in dem <code>Map</code> Objekt in der Einfügereihenfolge aus. Wenn ein thisArg Parameter angegeben ist, wird dieser als <code>this</code> für jeden Funktionsaufruf benutzt.</dd> + <dt>{{jsxref("Map.get", "Map.prototype.get(schlüssel)")}}</dt> + <dd>Gibt den Wert zu dem zugehörigen <code>schlüssel</code> zurück oder <code>undefined</code> wenn dieser nicht existiert.</dd> + <dt>{{jsxref("Map.has", "Map.prototype.has(schlüssel)")}}</dt> + <dd>Gibt einen boolean zurück, der angibt, ob ein Wert mit den <code>schlüssel</code> in einem <code>Map</code> Objekt vorhanden ist oder nicht.</dd> + <dt>{{jsxref("Map.prototype.keys()")}}</dt> + <dd>Gibt ein neues <code>Iterator</code> Objekt mit allen Schlüsseln von jedem Element in dem <code>Map</code> Objekt in Einfügereihenfolge zurück.</dd> + <dt>{{jsxref("Map.set", "Map.prototype.set(schlüssel, wert)")}}</dt> + <dd>Setzt den <code>wert</code> für einen <code>schlüssel</code> im <code>Map</code> Objekt. Gibt das <code>Map</code> Objekt zurück.</dd> + <dt>{{jsxref("Map.prototype.values()")}}</dt> + <dd>Gibt ein neues <code>Iterator</code> Objekt mit allen Werten von jedem Element in dem <code>Map</code> Objekt in Einfügereihenfolge zurück.</dd> + <dt>{{jsxref("Map.@@iterator", "Map.prototype[@@iterator]()")}}</dt> + <dd>Gibt ein neues <code>Iterator</code> Objekt mit allen <strong><code>[Schlüssel, Wert]</code> Paaren als Array</strong> von jedem Element in dem <code>Map</code> Objekt in Einfügereihenfolge zurück.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES2015', '#sec-map.prototype', 'Map.prototype')}}</td> + <td>{{Spec2('ES2015')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-map.prototype', 'Map.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td></td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + + + +<p>{{Compat("javascript.builtins.Map.prototype")}}</p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Set.prototype")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/number/index.html b/files/de/conflicting/web/javascript/reference/global_objects/number/index.html new file mode 100644 index 0000000000..f44a20d90d --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/number/index.html @@ -0,0 +1,90 @@ +--- +title: Number.prototype +slug: Web/JavaScript/Reference/Global_Objects/Number/prototype +tags: + - JavaScript + - Number + - Property + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Number +translation_of_original: Web/JavaScript/Reference/Global_Objects/Number/prototype +--- +<div>{{JSRef}}</div> + +<p>Die Eigenschaft <strong><code>Number.prototype</code></strong> repräsentiert den Prototypen für den {{jsxref("Number")}} Konstruktor.</p> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Alle {{jsxref("Number")}} Instanzen erben von <code>Number.prototype</code>. Das <code>prototype</code> Objekt des {{jsxref("Number")}} Konstruktors kann verändert werden um alle Instanzen von {{jsxref( "Number")}} zu erweitern.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>Number.prototype.constructor</code></dt> + <dd>Gibt die Funktion zurück, die die Instanz dieses Objektes erzeugt hat. Als Standardwert ist das das {{jsxref("Number")}} Objekt.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<dl> + <dt>{{jsxref("Number.prototype.toExponential()")}}</dt> + <dd>Gibt eine Zeichenkette (<code>string</code>) zurück, die die Nummer in Exponential Notation repräsentiert.</dd> + <dt>{{jsxref("Number.prototype.toFixed()")}}</dt> + <dd>Gibt eine Zeichenkette (<code>string</code>) zurück, die die Nummer als Festkommazahl repräsentiert.</dd> + <dt>{{jsxref("Number.prototype.toLocaleString()")}}</dt> + <dd>Gibt eine Zeichenkette (<code>string</code>) zurück, die die sprachenübliche Repräsentation der Nummer repräsentiert. Überschreibt die {{jsxref("Object.prototype.toLocaleString()")}} Methode.</dd> + <dt>{{jsxref("Number.prototype.toPrecision()")}}</dt> + <dd>Gibt eine Zeichenzette (<code>string</code>) zurück, die die Zahl in einer bestimmten Genauigkeit als Festkommazahl repräsentiert.</dd> + <dt>{{jsxref("Number.prototype.toSource()")}} {{non-standard_inline}}</dt> + <dd>Gibt ein Objektliteral zurück, welches das {{jsxref("Number")}} Objekt spezifiziert. Diese Methode kann genutzt werden, um ein neues Objekt zu erzeugen. Überschreibt die {{jsxref("Object.prototype.toSource()")}} Methode.</dd> + <dt>{{jsxref("Number.prototype.toString()")}}</dt> + <dd>Gibt eine Zeichenkette (<code>string</code>) zurück, die die Zahl in einer bestimmten Basis repräsentiert. Überschreibt die {{jsxref("Object.prototype.toString()")}} Methode.</dd> + <dt>{{jsxref("Number.prototype.valueOf()")}}</dt> + <dd>Gibt einen primitiven Wert des Objektes zurück. Überschreibt die {{jsxref("Object.prototype.valueOf()")}} Methode.</dd> +</dl> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initiale Definition. Implementiert in JavaScript 1.1.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.7.4', 'Number')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-properties-of-the-number-prototype-object', 'Number')}}</td> + <td>{{Spec2('ES6')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-properties-of-the-number-prototype-object', 'Number')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("javascript.builtins.Number.prototype")}}</p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Number")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/object/index.html b/files/de/conflicting/web/javascript/reference/global_objects/object/index.html new file mode 100644 index 0000000000..d6fdd3de2b --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/object/index.html @@ -0,0 +1,220 @@ +--- +title: Object.prototype +slug: Web/JavaScript/Reference/Global_Objects/Object/prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Object +translation_of_original: Web/JavaScript/Reference/Global_Objects/Object/prototype +--- +<div>{{JSRef}}</div> + +<p>Das <code><strong>Object.prototype</strong></code> Attribut repräsentiert das Prototype Objekt von {{jsxref("Object")}}.</p> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Alle Objekte in JavaScript stammen von {{jsxref("Object")}}; alle Objekte erben Methoden und Attribute von <code>Object.prototype</code>, wobei diese überschrieben werden können (mit Ausnahme von Objekten mit einem <code>null-</code>Prototyp, sprich <code>Object.create(null)</code>). Die Prototypen anderer Konstruktoren zum Beispiel, überschreiben das <code>constructor</code> Attribut und stellen ihre eigenen Methoden zur Verfügung {{jsxref("Object.prototype.toString()", "toString()")}}. Änderungen am <code>Object</code> prototype Objekt werden an alle Objekte weitergeleitet, solange die betroffenen Attribute und Methoden nicht zuvor in der Kette der Prototypen überschrieben wurden.</p> + +<h2 id="Attribute">Attribute</h2> + +<dl> + <dt>{{jsxref("Object.prototype.constructor")}}</dt> + <dd>Die Funktion, die den Prototypen eines Objekts erstellt.</dd> + <dt>{{jsxref("Object.prototype.__proto__")}} {{non-standard_inline}}</dt> + <dd>Zeigt auf das Objekt, das als bei der Initialisierung des Objektes als Prototyp diente.</dd> + <dt>{{jsxref("Object.prototype.__noSuchMethod__")}} {{non-standard_inline}}</dt> + <dd>Erlaubt das Erstellen einer Funktion, die dann ausgeführt wird, wenn ein undefiniertes Objekt als Methode aufgerufen wird.</dd> + <dt><s class="obsoleteElement">{{jsxref("Object.prototype.count","Object.prototype.__count__")}} {{obsolete_inline}}</s></dt> + <dd><s class="obsoleteElement">Wurde benutzt um die Anzahl der aufzählbaren Attribute direkt durch das Objekt zurückzugeben; mittlerweile entfernt.</s></dd> + <dt><s class="obsoleteElement">{{jsxref("Object.prototype.parent","Object.prototype.__parent__")}} {{obsolete_inline}}</s></dt> + <dd><s class="obsoleteElement">Wurde benutzt um auf den Kontext eines Objektes zu verweisen; mittlerweile entfernt.</s></dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<dl> + <dt>{{jsxref("Object.prototype.__defineGetter__()")}} {{non-standard_inline}} {{deprecated_inline}}</dt> + <dd>Verknüpft eine Funktion mit einem Attribut, das, wenn darauf zugegriffen wird eine Funktion ausführt und deren Rückgabewert zurück gibt.</dd> + <dt>{{jsxref("Object.prototype.__defineSetter__()")}} {{non-standard_inline}} {{deprecated_inline}}</dt> + <dd>Verknüpft eine Funktion mit einem Attribut, das, wenn dieses gesetzt werden soll, eine Funktion ausführt, die das Attribut modifiziert.</dd> + <dt>{{jsxref("Object.prototype.__lookupGetter__()")}} {{non-standard_inline}} {{deprecated_inline}}</dt> + <dd>Gibt die Funktion zurück, die mit dem spezifizierten Attribut über die Methode {{jsxref("Object.prototype.__defineGetter__()", "__defineGetter__()")}} verknüpft ist.</dd> + <dt>{{jsxref("Object.prototype.__lookupSetter__()")}} {{non-standard_inline}} {{deprecated_inline}}</dt> + <dd>Gibt die Funktion zurück, die mit dem spezifizierten Attribut über die Methode {{jsxref("Object.prototype.__defineSetter__()", "__defineSetter__()")}} verknüpft ist.</dd> + <dt>{{jsxref("Object.prototype.hasOwnProperty()")}}</dt> + <dd>Gibt einen Boolean Wert zurück, der anzeigt, ob ein Attribut ein direktes Attribut dieses Objekts ist, oder über Vererbung durch einen Prototypen hinzugefügt wurde.</dd> + <dt>{{jsxref("Object.prototype.isPrototypeOf()")}}</dt> + <dd>Gibt einen Boolean Wert zurück, der anzeigt, ob das spezifizierte Objekt in der Prototyp-Kette des Objekts, das diese Funktion aufruft, enthalten ist.</dd> + <dt>{{jsxref("Object.prototype.propertyIsEnumerable()")}}</dt> + <dd>Gibt einen Boolean Wert zurück, der anzeigt, ob das interne <a href="/en-US/docs/Web/JavaScript/Data_structures#Properties">ECMAScript [[Enumerable]] attribute</a> gesetzt ist.</dd> + <dt>{{jsxref("Object.prototype.toSource()")}} {{non-standard_inline}}</dt> + <dd>Liefert einen String zurück, der die Quelle eines Objekt-Literals enthält, und das Objekt darstellt, das diese Funktion aufruft; man kann diesen Wert benutzen, um ein neues Objekt zu erstellen.</dd> + <dt>{{jsxref("Object.prototype.toLocaleString()")}}</dt> + <dd>Ruft {{jsxref("Object.toString", "toString()")}} auf.</dd> + <dt>{{jsxref("Object.prototype.toString()")}}</dt> + <dd>Gibt eine String-Darstellung des Objekts zurück.</dd> + <dt>{{jsxref("Object.prototype.unwatch()")}} {{non-standard_inline}}</dt> + <dd>Entfernt einen Kontrollpunkt von einem Attribut des Objekts.</dd> + <dt>{{jsxref("Object.prototype.valueOf()")}}</dt> + <dd>Gibt den primitiven Wert des spezifizierten Objekts zurück.</dd> + <dt>{{jsxref("Object.prototype.watch()")}} {{non-standard_inline}}</dt> + <dd>Fügt einem Attribut des Objekts einen Kontrollpunkt hinzu.</dd> + <dt><s class="obsoleteElement">{{jsxref("Object.prototype.eval()")}} {{obsolete_inline}}</s></dt> + <dd>Wurde genutzt, um einen String bestehend aus JavaScript Code, im Kontext des aktuellen Objekts auszuwerten; wurde entfernt;</dd> +</dl> + +<h2 id="Beispiele">Beispiele</h2> + +<p>Weil JavaScript keine klassischen Sub-Klassen-Funktionalität hat, sind Prototypen ein guter Weg, um "Base Class" Objekte mit bestimmten Funktionen zu erstellen, die als Objekte fungieren. Zum Beispiel:</p> + +<pre class="brush: js">var Person = function() { + this.canTalk = true; +}; + +Person.prototype.greet = function() { + if (this.canTalk) { + console.log('Hi, I am ' + this.name); + } +}; + +var Employee = function(name, title) { + Person.call(this); + this.name = name; + this.title = title; +}; + +Employee.prototype = Object.create(Person.prototype); +Employee.prototype.constructor = Employee; + +Employee.prototype.greet = function() { + if (this.canTalk) { + console.log('Hi, I am ' + this.name + ', the ' + this.title); + } +}; + +var Customer = function(name) { + Person.call(this); + this.name = name; +}; + +Customer.prototype = Object.create(Person.prototype); +Customer.prototype.constructor = Customer; + +var Mime = function(name) { + Person.call(this); + this.name = name; + this.canTalk = false; +}; + +Mime.prototype = Object.create(Person.prototype); +Mime.prototype.constructor = Mime; + +var bob = new Employee('Bob', 'Builder'); +var joe = new Customer('Joe'); +var rg = new Employee('Red Green', 'Handyman'); +var mike = new Customer('Mike'); +var mime = new Mime('Mime'); + +bob.greet(); +// Hi, I am Bob, the Builder + +joe.greet(); +// Hi, I am Joe + +rg.greet(); +// Hi, I am Red Green, the Handyman + +mike.greet(); +// Hi, I am Mike + +mime.greet(); +</pre> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Specification</th> + <th scope="col">Status</th> + <th scope="col">Comment</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initial definition. Implemented in JavaScript 1.0.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.2.3.1', 'Object.prototype')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-object.prototype', 'Object.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-object.prototype', 'Object.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browser_Kompatibilität">Browser Kompatibilität</h2> + +<div>{{CompatibilityTable}}</div> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Feature</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari</th> + </tr> + <tr> + <td>Basic support</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>Feature</th> + <th>Android</th> + <th>Chrome for Android</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + </tr> + <tr> + <td>Basic support</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<h2 id="See_also">See also</h2> + +<ul> + <li><a href="/en-US/docs/Web/JavaScript/Introduction_to_Object-Oriented_JavaScript">Introduction to Object-Oriented JavaScript</a></li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/rangeerror/index.html b/files/de/conflicting/web/javascript/reference/global_objects/rangeerror/index.html new file mode 100644 index 0000000000..fba99e1e5a --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/rangeerror/index.html @@ -0,0 +1,129 @@ +--- +title: RangeError.prototype +slug: Web/JavaScript/Reference/Global_Objects/RangeError/prototype +translation_of: Web/JavaScript/Reference/Global_Objects/RangeError +translation_of_original: Web/JavaScript/Reference/Global_Objects/RangeError/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <code><strong>RangeError.prototype</strong></code> Eigenschaft repräsentiert den Prototypen des {{jsxref("RangeError")}} Konstruktoren.</p> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Alle {{jsxref("RangeError")}} Instanzen erben vom <code>RangeError.prototype</code>. Man kann den Prototypen nutzen um Eigenschaften oder Methoden allen Instanzen hinzuzufügen.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>RangeError.prototype.constructor</code></dt> + <dd>Spezifiziert die Funktion welche den Prototypen einer Instanz erschaffen hat.</dd> + <dt>{{jsxref("Error.prototype.message", "RangeError.prototype.message")}}</dt> + <dd>Fehlermeldung. Obwohl ECMA-262 angibt, dass {{jsxref("RangeError")}} seine eigene <code>message </code>Eigenschaft versorgen sollte, erbt es in <a href="/en-US/docs/Mozilla/Projects/SpiderMonkey">SpiderMonkey</a> die {{jsxref("Error.prototype.message")}}.</dd> + <dt>{{jsxref("Error.prototype.name", "RangeError.prototype.name")}}</dt> + <dd>Fehlername. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.fileName", "RangeError.prototype.fileName")}}</dt> + <dd>Der Dateipfad verursacht diesen Fehler. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.lineNumber", "RangeError.prototype.lineNumber")}}</dt> + <dd>Die Zeile in der Datei, bei der der Fehler auftritt. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.columnNumber", "RangeError.prototype.columnNumber")}}</dt> + <dd>Die Spaltennummer der Zeile , bei der der Fehler auftritt. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.stack", "RangeError.prototype.stack")}}</dt> + <dd>Stack - Ablaufverfolgung. Geerbt von {{jsxref("Error")}}.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<p> Obwohl das {{jsxref("RangeError")}} Prototypobjekt keine eigenen Methoden beinhaltet, beerben {{jsxref("RangeError")}} Instanzen einige Methoden durch die Prototypenkette.</p> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Beschreibung</th> + </tr> + <tr> + <td>{{SpecName('ES3')}}</td> + <td>{{Spec2('ES3')}}</td> + <td>Initialdefinition.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.11.7.6', 'NativeError.prototype')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-nativeerror.prototype', 'NativeError.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-nativeerror.prototype', 'NativeError.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div>{{CompatibilityTable}}</div> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Merkmal</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari</th> + </tr> + <tr> + <td>Basic support</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>Merkmal</th> + <th>Android</th> + <th>Chrome for Android</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + </tr> + <tr> + <td>Basic support</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Error.prototype")}}</li> + <li>{{jsxref("Function.prototype")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/string/index.html b/files/de/conflicting/web/javascript/reference/global_objects/string/index.html new file mode 100644 index 0000000000..aad1a12ead --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/string/index.html @@ -0,0 +1,190 @@ +--- +title: String.prototype +slug: Web/JavaScript/Reference/Global_Objects/String/prototype +tags: + - Eigentum + - JavaScript + - Prototyp + - Referenz + - Strang + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String +translation_of_original: Web/JavaScript/Reference/Global_Objects/String/prototype +--- +<div>{{JSRef}}</div> + +<p><font><font>Die </font></font><strong><code>String.prototype</code></strong><font><font>Eigenschaft repräsentiert das Prototypobjekt {{jsxref ("String")}}.</font></font></p> + +<div>{{js_property_attributes(0, 0, 0)}}</div> + +<h2 id="Beschreibung"><font><font>Beschreibung</font></font></h2> + +<p><font><font>Alle {{jsxref ("String")}} Instanzen erben von </font></font><code>String.prototype</code><font><font>. </font><font>Änderungen am </font></font><code>String</code><font><font>Prototypobjekt werden an alle Instanzen von {{jsxref ("String")}} weitergegeben.</font></font></p> + +<h2 id="Eigenschaften"><font><font>Eigenschaften</font></font></h2> + +<dl> + <dt><code>String.prototype.constructor</code></dt> + <dd><font><font>Gibt die Funktion an, mit der der Prototyp eines Objekts erstellt wird.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.length")}}</font></font></dt> + <dd><font><font>Reflektiert die Länge der Zeichenfolge.</font></font></dd> + <dt><code><em>N</em></code></dt> + <dd><font><font>Wird verwendet, um auf das Zeichen an der </font></font><em><font><font>N-</font></font></em><font><font> ten Position </font><font>zuzugreifen, </font><font>wobei </font></font><em><font><font>N</font></font></em><font><font> eine ganze Zahl zwischen 0 und eins ist, die kleiner als der Wert von {{jsxref ("String.length", "length")} ist. </font><font>Diese Eigenschaften sind schreibgeschützt.</font></font></dd> +</dl> + +<p>Methods</p> + +<h2 id="Methoden"><font><font>Methoden</font></font></h2> + +<h3 id="Methoden_die_nichts_mit_HTML_zu_tun_haben"><font><font>Methoden, die nichts mit HTML zu tun haben</font></font></h3> + +<dl> + <dt><font><font>{{jsxref ("String.prototype.charAt ()")}}</font></font></dt> + <dd><font><font>Gibt das Zeichen (genau eine UTF-16-Codeeinheit) am angegebenen Index zurück.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.charCodeAt ()")}}</font></font></dt> + <dd><font><font>Gibt eine Zahl zurück, die der UTF-16-Code-Einheitswert am angegebenen Index ist.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.codePointAt ()")}}</font></font></dt> + <dd><font><font>Gibt eine nicht negative Ganzzahl zurück, die der Codepunktwert des UTF-16-codierten Codepunkts ab dem angegebenen Index ist.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.concat ()")}}</font></font></dt> + <dd><font><font>Kombiniert den Text zweier Zeichenfolgen und gibt eine neue Zeichenfolge zurück.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.includes ()")}}</font></font></dt> + <dd><font><font>Legt fest, ob eine Zeichenfolge in einer anderen Zeichenfolge gefunden werden darf.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.endsWith ()")}}</font></font></dt> + <dd><font><font>Bestimmt, ob eine Zeichenfolge mit den Zeichen einer anderen Zeichenfolge endet.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.indexOf ()")}}</font></font></dt> + <dd><font><font>Gibt den Index innerhalb des aufrufenden {{jsxref ("String")}} Objekts des ersten Vorkommens des angegebenen Werts zurück oder -1, falls nicht gefunden.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.lastIndexOf ()")}}</font></font></dt> + <dd><font><font>Gibt den Index innerhalb des aufrufenden {{jsxref ("String")}} Objekts des letzten Vorkommens des angegebenen Werts zurück oder -1, falls nicht gefunden.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.localeCompare ()")}}</font></font></dt> + <dd><font><font>Gibt eine Zahl zurück, die angibt, ob eine Referenzzeichenfolge vor oder nach der angegebenen Zeichenfolge in Sortierreihenfolge steht oder mit dieser übereinstimmt.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.match ()")}}</font></font></dt> + <dd><font><font>Wird verwendet, um einen regulären Ausdruck mit einer Zeichenfolge abzugleichen.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.matchAll ()")}}</font></font></dt> + <dd><font><font>Gibt einen Iterator aller Übereinstimmungen zurück.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.normalize ()")}}</font></font></dt> + <dd><font><font>Gibt die Unicode-Normalisierungsform des aufrufenden Zeichenfolgenwerts zurück.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.padEnd ()")}}</font></font></dt> + <dd><font><font>Füllt die aktuelle Zeichenfolge am Ende mit einer bestimmten Zeichenfolge auf, um aus einer bestimmten Länge eine neue Zeichenfolge zu erstellen.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.padStart ()")}}</font></font></dt> + <dd><font><font>Füllt die aktuelle Zeichenfolge von Anfang an mit einer bestimmten Zeichenfolge auf, um aus einer bestimmten Länge eine neue Zeichenfolge zu erstellen.</font></font></dd> + <dt><s><font><font>{{jsxref ("String.prototype.quote ()")}} {{obsolete_inline}}</font></font></s></dt> + <dd><s><font><font>Umschließt die Zeichenfolge in doppelte Anführungszeichen (" </font></font><code>"</code><font><font>").</font></font></s></dd> + <dt><font><font>{{jsxref ("String.prototype.repeat ()")}}</font></font></dt> + <dd><font><font>Gibt eine Zeichenfolge zurück, die aus den Elementen des Objekts besteht, die zu den angegebenen Zeiten wiederholt wurden.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.replace ()")}}</font></font></dt> + <dd><font><font>Wird verwendet, um eine Übereinstimmung zwischen einem regulären Ausdruck und einer Zeichenfolge zu finden und die übereinstimmende Teilzeichenfolge durch eine neue Teilzeichenfolge zu ersetzen.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.search ()")}}</font></font></dt> + <dd><font><font>Führt die Suche nach einer Übereinstimmung zwischen einem regulären Ausdruck und einer angegebenen Zeichenfolge aus.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.slice ()")}}</font></font></dt> + <dd><font><font>Extrahiert einen Abschnitt einer Zeichenfolge und gibt eine neue Zeichenfolge zurück.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.split ()")}}</font></font></dt> + <dd><font><font>Teilt ein {{jsxref ("Global_Objects / String", "String")}} -Objekt in ein Array von Zeichenfolgen auf, indem die Zeichenfolge in Teilzeichenfolgen aufgeteilt wird.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.startsWith ()")}}</font></font></dt> + <dd><font><font>Legt fest, ob eine Zeichenfolge mit den Zeichen einer anderen Zeichenfolge beginnt.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.substr ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>Gibt die Zeichen in einer Zeichenfolge zurück, die an der angegebenen Position mit der angegebenen Anzahl von Zeichen beginnt.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.substring ()")}}</font></font></dt> + <dd><font><font>Gibt die Zeichen in einer Zeichenfolge zwischen zwei Indizes in die Zeichenfolge zurück.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.toLocaleLowerCase ()")}}</font></font></dt> + <dd><font><font>Die Zeichen in einer Zeichenfolge werden unter Berücksichtigung des aktuellen Gebietsschemas in Kleinbuchstaben konvertiert. </font><font>Für die meisten Sprachen wird das Gleiche wie {{jsxref ("String.prototype.toLowerCase ()", "toLowerCase ()")}} zurückgegeben.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.toLocaleUpperCase ()")}}</font></font></dt> + <dd><font><font>Die Zeichen in einer Zeichenfolge werden unter Berücksichtigung des aktuellen Gebietsschemas in Großbuchstaben umgewandelt. </font><font>Für die meisten Sprachen wird das Gleiche wie {{jsxref ("String.prototype.toUpperCase ()", "toUpperCase ()")}} zurückgegeben.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.toLowerCase ()")}}</font></font></dt> + <dd><font><font>Gibt den aufrufenden Zeichenfolgenwert zurück, der in Kleinbuchstaben konvertiert wurde.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.toSource ()")}} {{non-standard_inline}}</font></font></dt> + <dd><font><font>Gibt ein Objektliteral zurück, das das angegebene Objekt darstellt. </font><font>Mit diesem Wert können Sie ein neues Objekt erstellen. </font><font>Überschreibt die Methode {{jsxref ("Object.prototype.toSource ()")}}.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.toString ()")}}</font></font></dt> + <dd><font><font>Gibt eine Zeichenfolge zurück, die das angegebene Objekt darstellt. </font><font>Überschreibt die Methode {{jsxref ("Object.prototype.toString ()")}}.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.toUpperCase ()")}}</font></font></dt> + <dd><font><font>Gibt den aufrufenden Zeichenfolgenwert zurück, der in Großbuchstaben konvertiert wurde.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.trim ()")}}</font></font></dt> + <dd><font><font>Schneidet Leerzeichen vom Anfang und Ende der Zeichenfolge ab. </font><font>Teil des ECMAScript 5-Standards.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.trimStart ()")}}</font></font><br> + <font><font>{{jsxref ("String.prototype.trimLeft ()")}}</font></font></dt> + <dd><font><font>Schneidet Leerzeichen vom Anfang der Zeichenfolge ab.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.trimEnd ()")}}</font></font><br> + <font><font>{{jsxref ("String.prototype.trimRight ()")}</font></font></dt> + <dd><font><font>Schneidet Leerzeichen vom Ende der Zeichenfolge ab.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.valueOf ()")}}</font></font></dt> + <dd><font><font>Gibt den Grundwert des angegebenen Objekts zurück. </font><font>Überschreibt die Methode {{jsxref ("Object.prototype.valueOf ()")}}.</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype. @@ iterator ()", "String.prototype [@@ iterator] ()")}}</font></font></dt> + <dd><font><font>Gibt ein neues </font></font><code>Iterator</code><font><font>Objekt zurück, das die Codepunkte eines String-Werts durchläuft und jeden Codepunkt als String-Wert zurückgibt.</font></font></dd> +</dl> + +<h3 id="HTML-Wrapper-Methoden"><font><font>HTML-Wrapper-Methoden</font></font></h3> + +<p><font><font>Diese Methoden sind nur eingeschränkt einsetzbar, da sie nur einen Teil der verfügbaren HTML-Tags und -Attribute bereitstellen.</font></font></p> + +<dl> + <dt><font><font>{{jsxref ("String.prototype.anchor ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{htmlattrxref ("name", "a", "<a name=\"name\">")}} (Hypertext-Ziel)</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.big ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{HTMLElement ("big")}}</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.blink ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{HTMLElement ("blinken")}}</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.bold ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{HTMLElement ("b")}}</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.fixed ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{HTMLElement ("tt")}}</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.fontcolor ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{htmlattrxref ("color", "font", "<font color = \" color \ ">")}}</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.fontsize ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{htmlattrxref ("size", "font", "<font size = \" size \ ">")}}</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.italics ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{HTMLElement ("i")}}</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.link ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{htmlattrxref ("href", "a", "<a href=\"url\">")}} (Link zu URL)</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.small ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{HTMLElement ("small")}}</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.strike ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{HTMLElement ("strike")}}</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.sub ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{HTMLElement ("sub")}}</font></font></dd> + <dt><font><font>{{jsxref ("String.prototype.sup ()")}} {{deprecated_inline}}</font></font></dt> + <dd><font><font>{{HTMLElement ("sup")}}</font></font></dd> +</dl> + +<h2 id="Specifications">Specifications</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Specification</th> + <th scope="col">Status</th> + <th scope="col">Comment</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Anfangsdefinition.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.5.3.1', 'String.prototype')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td></td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-string.prototype', 'String.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td></td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-string.prototype', 'String.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td></td> + </tr> + </tbody> +</table> + +<h2 id="Browser-Kompatibilität"><font><font>Browser-Kompatibilität</font></font></h2> + +<p class="hidden"> <font><font>Die Kompatibilitätstabelle auf dieser Seite wird aus strukturierten Daten generiert. </font><font>Wenn Sie zu den Daten beitragen möchten, lesen Sie bitte </font></font><a href="https://github.com/mdn/browser-compat-data"><font><font>https://github.com/mdn/browser-compat-data</font></font></a><font><font> und senden Sie uns eine Pull-Anfrage.</font></font></p> + +<p>{{Compat("javascript.builtins.String.prototype")}}</p> + +<h2 id="Sieh_auch">Sieh auch</h2> + +<ul> + <li>{{jsxref("String")}}</li> + <li>{{jsxref("Function.prototype")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/syntaxerror/index.html b/files/de/conflicting/web/javascript/reference/global_objects/syntaxerror/index.html new file mode 100644 index 0000000000..eaa648d375 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/syntaxerror/index.html @@ -0,0 +1,89 @@ +--- +title: SyntaxError.prototype +slug: Web/JavaScript/Reference/Global_Objects/SyntaxError/prototype +tags: + - Error + - JavaScript + - Property + - Prototype + - SyntaxError +translation_of: Web/JavaScript/Reference/Global_Objects/SyntaxError +translation_of_original: Web/JavaScript/Reference/Global_Objects/SyntaxError/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <code><strong>SyntaxError.prototype</strong></code> Eigenschaft repräsentiert die Eigenschaft die Eigenschaft für den {{jsxref("SyntaxError")}} Konstruktor.</p> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Alle {{jsxref("SyntaxError")}} Instanzen erben von <code>SyntaxError.prototype</code>. Man kann den Prototypen einsetzen, um Eigenschaften oder Methoden für allen Instanzen hinzuzufügen.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>SyntaxError.prototype.constructor</code></dt> + <dd>Spezifiziert die Funktion, die einen Instanz des Prototypen erstellt.</dd> + <dt>{{jsxref("Error.prototype.message", "SyntaxError.prototype.message")}}</dt> + <dd>Fehlermeldung. Obwohl ECMA-262 Spezifiziert, dass {{jsxref("SyntaxError")}} eine eigene <code>message</code> Eigenschaft haben sollte, erbt dieser in <a href="/de/docs/Mozilla/Projects/SpiderMonkey">SpiderMonkey</a> die Eigenschaft {{jsxref("Error.prototype.message")}}.</dd> + <dt>{{jsxref("Error.prototype.name", "SyntaxError.prototype.name")}}</dt> + <dd>Fehlername. Vererbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.fileName", "SyntaxError.prototype.fileName")}}</dt> + <dd>Pfad zur Datei, in der der Fehler erzeugt wurde. Vererbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.lineNumber", "SyntaxError.prototype.lineNumber")}}</dt> + <dd>Zeilennummer, in der der Fehler erzeugt wurde. Vererbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.columnNumber", "SyntaxError.prototype.columnNumber")}}</dt> + <dd>Spaltennummer, in der der Fehler erzeugt wurde. Vererbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.stack", "SyntaxError.prototype.stack")}} {{non-standard_inline}}</dt> + <dd>Stack trace. Vererbt von {{jsxref("Error")}}.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<p>Obwohl das {{jsxref("SyntaxError")}} Prototypobjekt keine Methoden enthält, haben {{jsxref("SyntaxError")}} Instanzen einige Vererbte Methoden durch die Prototypenkette.</p> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES3')}}</td> + <td>{{Spec2('ES3')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.11.7.6', 'NativeError.prototype')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-nativeerror.prototype', 'NativeError.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-nativeerror.prototype', 'NativeError.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.SyntaxError")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Error.prototype")}}</li> + <li>{{jsxref("Function.prototype")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/global_objects/typeerror/index.html b/files/de/conflicting/web/javascript/reference/global_objects/typeerror/index.html new file mode 100644 index 0000000000..6c7e61d363 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/global_objects/typeerror/index.html @@ -0,0 +1,89 @@ +--- +title: TypeError.prototype +slug: Web/JavaScript/Reference/Global_Objects/TypeError/prototype +tags: + - Error + - JavaScript + - Property + - Prototype + - TypeError +translation_of: Web/JavaScript/Reference/Global_Objects/TypeError +translation_of_original: Web/JavaScript/Reference/Global_Objects/TypeError/prototype +--- +<div>{{JSRef}}</div> + +<p>Die <code><strong>TypeError.prototype</strong></code> Eigenschaft repräsentiert den prototype des {{jsxref("TypeError")}} Konstruktors.</p> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Alle {{jsxref("TypeError")}} Instanzen erben von <code>TypeError.prototype</code>. Dem prototype können über alle Instanzen hinweg Eigenschaften und Methoden hinzugefügt werden.</p> + +<h2 id="Eigenschaften">Eigenschaften</h2> + +<dl> + <dt><code>TypeError.prototype.constructor</code></dt> + <dd>Spezifiziert die Instanz erstellende Funktion.</dd> + <dt>{{jsxref("Error.prototype.message", "TypeError.prototype.message")}}</dt> + <dd>Fehlermeldung. ECMA-262 spezifiziert, dass {{jsxref("TypeError")}} eine eigene <code>message</code> Eigenschaft zur Verfügung stellen soll. In <a href="/en-US/docs/Mozilla/Projects/SpiderMonkey">SpiderMonkey</a> jedoch, erbt es von {{jsxref("Error.prototype.message")}}.</dd> + <dt>{{jsxref("Error.prototype.name", "TypeError.prototype.name")}}</dt> + <dd>Fehlerbezeichnung. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.fileName", "TypeError.prototype.fileName")}}</dt> + <dd>Pfad zur Datei, welche den Fehler verursachte. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.lineNumber", "TypeError.prototype.lineNumber")}}</dt> + <dd>Zeile in welcher der Fehler verusacht wurde. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.columnNumber", "TypeError.prototype.columnNumber")}}</dt> + <dd>Zeichennummer der Zeile in welcher der Fehler verursacht wurde. Geerbt von {{jsxref("Error")}}.</dd> + <dt>{{jsxref("Error.prototype.stack", "TypeError.prototype.stack")}}</dt> + <dd>Stack trace. Geerbt von {{jsxref("Error")}}.</dd> +</dl> + +<h2 id="Methoden">Methoden</h2> + +<p>Das {{jsxref("TypeError")}} prototype Objekt beinhaltet keine eigenen Methoden, jedoch erben {{jsxref("TypeError")}} Instanzen einige Methoden durch die Prototypenkette.</p> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES3', '#sec-15.11.7.6', 'NativeError.prototype')}}</td> + <td>{{Spec2('ES3')}}</td> + <td>Initiale Definition</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-15.11.7.6', 'NativeError.prototype')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-nativeerror.prototype', 'NativeError.prototype')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>Definiert als <code><em>NativeError</em>.prototype</code>.</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-nativeerror.prototype', 'NativeError.prototype')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("javascript.builtins.TypeError")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Error.prototype")}}</li> + <li>{{jsxref("Function.prototype")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/operators/index.html b/files/de/conflicting/web/javascript/reference/operators/index.html new file mode 100644 index 0000000000..598d43df68 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/operators/index.html @@ -0,0 +1,575 @@ +--- +title: Bitweise Operatoren +slug: Web/JavaScript/Reference/Operators/Bitwise_Operatoren +tags: + - JavaScript + - Operator + - Reference +translation_of: Web/JavaScript/Reference/Operators +translation_of_original: Web/JavaScript/Reference/Operators/Bitwise_Operators +--- +<div>{{jsSidebar("Operators")}}</div> + +<p><strong>Bitweise Operatoren </strong>werden auf Sequenzen aus 32 bit (Nullen und Einsen) angewandt im Gegensatz zu Operatoren, die mit Dezimal-, Hexadezimal- oder Oktalzahlen (<code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Number">numbers</a></code>) arbeiten. Beispielsweise hat die Dezimalzahl neun die binäre Darstellung 1001. Auch wenn Bitweise Operatoren mit Binärdarstellungen arbeiten, sind deren Ausgabewerte Javascript Standardzahlenwerte.</p> + +<div>{{EmbedInteractiveExample("pages/js/expressions-bitwiseoperators.html")}}</div> + + + +<p>Die folgende Tabelle fasst Javascripts Bitweise Operatoren zusammen:</p> + +<table class="standard-table"> + <tbody> + <tr> + <th>Operator</th> + <th>Einsatz</th> + <th>Beschreibung</th> + </tr> + <tr> + <td><a href="#Bitwise_AND">Bitweises UND</a></td> + <td><code>a & b</code></td> + <td>Gibt <code>1</code> in jeder Bit Position zurück, an welcher beide Operanden <code>1</code> sind.</td> + </tr> + <tr> + <td><a href="#Bitwise_OR">Bitweises ODER</a></td> + <td><code>a | b</code></td> + <td>Gibt <code>1</code> in jeder Bit Position zurück, an welcher einer oder beide Operanden <code>1</code> sind.</td> + </tr> + <tr> + <td><a href="#Bitwise_XOR">Bitweises XOR</a></td> + <td><code>a ^ b</code></td> + <td>Gibt <code>1</code> in jeder Bit Position zurück, an welcher einer aber nicht beide Operanden <code>1</code> sind.</td> + </tr> + <tr> + <td><a href="#Bitwise_NOT">Bitweise Negation</a></td> + <td><code>~ a</code></td> + <td>Invertiert die Bits des Operanden</td> + </tr> + <tr> + <td><a href="#Left_shift">Linksverschiebung</a></td> + <td><code>a << b</code></td> + <td>Verschiebt <code>a</code> in binärer Repräsentation <code>b</code> (< 32) Bits nach links, von Rechts werden Nullen hereingeschoben.</td> + </tr> + <tr> + <td><a href="#Right_shift">Vorzeichen propagierende Rechtsverschiebung</a></td> + <td><code>a >> b</code></td> + <td>Verschiebt <code>a</code> in binärer Repräsentation <code>b</code> (< 32) Bits nach rechts, herausgeschobene Bits werden verworfen.</td> + </tr> + <tr> + <td><a href="#Unsigned_right_shift">Null füllende Rechtsverschiebung</a></td> + <td><code>a >>> b</code></td> + <td>Verschiebt <code>a</code> in binärer Repräsentation <code>b</code> (< 32) Bits nach rechts, herausgeschobene Bits werden verworfen und Nullen werden von links hereingeschoben.</td> + </tr> + </tbody> +</table> + +<h2 id="Vorzeichenbehaftete_32-Bit_Integer">Vorzeichenbehaftete 32-Bit Integer</h2> + +<p>Die Operanden aller Bitweisen Operationen werden in vorzeichenbehaftete 32-Bit Integer im Zweierkomplementformat konvertiert. Zweierkomplementformat bedeutet, dass das Gegenstück einer negative Zahl alle Bits invertiert (Bitweise Negation einer Zahl oder auch Einerkomplement einer Zahl) plus eins ist. Zum Beispiel die codierte Integer 314:</p> + +<pre class="brush: js">00000000000000000000000100111010 +</pre> + +<p>Im Folgenden ist <code>~314</code> codiert, d. h. das Einerkomplement von <code>314</code>:</p> + +<pre class="brush: js">11111111111111111111111011000101 +</pre> + +<p>Anschließend wird <code>-314</code> codiert, d. h. das Zweierkomplement <code>314</code>:</p> + +<pre class="brush: js">11111111111111111111111011000110 +</pre> + +<p>Das Zweierkomplement garantiert, dass das Bit ganz links 0 ist, wenn die Zahl Positiv ist und 1 ist, wenn die Zahl negativ ist. Dieses wird das Vorzeichenbit genannt.</p> + +<p>Die Zahl <code>0</code> ist ein Integer, der komplett aus 0 Bits besteht.</p> + +<pre class="brush: js">0 (base 10) = 00000000000000000000000000000000 (base 2) +</pre> + +<p>Die Zahl <code>-1</code> ist ein Integer der komplett aus 1 Bits besteht.</p> + +<pre class="brush: js">-1 (base 10) = 11111111111111111111111111111111 (base 2) +</pre> + +<p>Die Zahl <code>-2147483648</code> (hexadezimale Repräsentation: <code>-0x80000000</code>) ist der Integer, welcher komplett aus 0 Bits besteht, außer dem ersten Bit (linkes Bit).</p> + +<pre class="brush: js">-2147483648 (base 10) = 10000000000000000000000000000000 (base 2) +</pre> + +<p>Die Zahl <code>2147483647</code> (hexadezimale Repräsentation: <code>-0x7fffffff</code>) ist der Integer, welcher komplett aus 1 Bits besteht, außer dem ersten Bit (linkes Bit).</p> + +<pre class="brush: js">2147483647 (base 10) = 01111111111111111111111111111111 (base 2) +</pre> + +<p>Die Zahlen <code>-2147483648</code> und <code>2147483647</code> sind die minimalen und Maximalen Integers, die mit 32-Bit vorzeichenbehafteten Zahlen repräsentiert werden können.</p> + +<h2 id="Bitweise_logische_Operatoren">Bitweise logische Operatoren</h2> + +<p>Konzeptionell arbeiten die bitweisen logischen Operatoren wie folgt:</p> + +<ul> + <li>Die Operanden werden in 32-Bit Integer konvertiert und als Serie von Bits (null und eins) ausgedrückt. Bei Zahlen mit mehr als 32 Bits, werden die höchstwertigen Bits verworfen. Zum Beispiel wird der folgende Integer mit mehr als 32 Bits zu einem 32 Bit Integer konvertiert:: + <pre class="brush: js">Vorher: 11100110111110100000000000000110000000000001 +Nachher: 10100000000000000110000000000001</pre> + </li> + <li>Jedes Bit im ersten Operanden wird mit dem korrespondierenden Bit im zweiten Operanden gepaart: erstes Bit zu erstem, zweites Bit zu zweitem Bit, und so weiter.</li> + <li>Der Operator wird auf jedem Bitpaar angewendet und das Ergebnis wird Bitweise konstruiert.</li> +</ul> + +<h3 id="(Bitweises_UND)"><a name="Bitwise_AND">& (Bitweises UND)</a></h3> + +<p>Führt die UND Operation auf jedem Bitpaar durch. <code>a</code> UND <code>b</code> ergibt <code>1</code>, wenn beide <code>a</code> und <code>b</code> <code>1</code> sind. Die Wahrheitstabelle für den UND Operator ist:</p> + +<table class="standard-table"> + <tbody> + <tr> + <td class="header">a</td> + <td class="header">b</td> + <td class="header">a UND b</td> + </tr> + <tr> + <td>0</td> + <td>0</td> + <td>0</td> + </tr> + <tr> + <td>0</td> + <td>1</td> + <td>0</td> + </tr> + <tr> + <td>1</td> + <td>0</td> + <td>0</td> + </tr> + <tr> + <td>1</td> + <td>1</td> + <td>1</td> + </tr> + </tbody> +</table> + +<pre class="brush: js">. 9 (Basis 10) = 00000000000000000000000000001001 (Basis 2) + 14 (Basis 10) = 00000000000000000000000000001110 (Basis 2) + -------------------------------- +14 & 9 (Basis 10) = 00000000000000000000000000001000 (Basis 2) = 8 (Basis 10) +</pre> + +<p>Bitweises verUNDen jeder Zahl <code>x</code> mit <code>0</code> ergibt <code>0</code>. Bitweises verUNDen jeder Zahl <code>x</code> mit <code>-1</code> ergibt <code>x</code>.</p> + +<h3 id="(Bitweises_ODER)"><a name="Bitwise_OR">| (Bitweises ODER)</a></h3> + +<p>Führt die ODER Operation auf jedem Bitpaar durch. <code>a</code> ODER <code>b</code> ergibt <code>1</code>, wenn einer, <code>a</code> oder <code>b</code>, <code>1</code> sind. Die Wahrheitstabelle für den ODER Operator ist:</p> + +<table class="standard-table"> + <tbody> + <tr> + <td class="header">a</td> + <td class="header">b</td> + <td class="header">a ODER b</td> + </tr> + <tr> + <td>0</td> + <td>0</td> + <td>0</td> + </tr> + <tr> + <td>0</td> + <td>1</td> + <td>1</td> + </tr> + <tr> + <td>1</td> + <td>0</td> + <td>1</td> + </tr> + <tr> + <td>1</td> + <td>1</td> + <td>1</td> + </tr> + </tbody> +</table> + +<pre class="brush: js">. 9 (Basis 10) = 00000000000000000000000000001001 (Basis 2) + 14 (Basis 10) = 00000000000000000000000000001110 (Basis 2) + -------------------------------- +14 | 9 (Basis 10) = 00000000000000000000000000001111 (Basis 2) = 15 (Basis 10) +</pre> + +<p>Bitweises verODERn jeder Zahl <code>x</code> mit <code>0</code> ergibt <code>x</code>. Bitweises verODERn jeder Zahl <code>x</code> mit <code>-1</code> ergibt <code>-1</code>.</p> + +<h3 id="(Bitweises_XOR)"><a name="Bitwise_XOR">^ (Bitweises XOR)</a></h3> + +<p>Führt die XOR Operation auf jedem Bitpaar durch. <code>a</code> XOR <code>b</code> ergibt <code>1</code>, wenn sich <code>a</code> und <code>b</code>, unterscheiden. Die Wahrheitstabelle für den XOR Operator ist:</p> + +<table class="standard-table"> + <tbody> + <tr> + <td class="header">a</td> + <td class="header">b</td> + <td class="header">a XOR b</td> + </tr> + <tr> + <td>0</td> + <td>0</td> + <td>0</td> + </tr> + <tr> + <td>0</td> + <td>1</td> + <td>1</td> + </tr> + <tr> + <td>1</td> + <td>0</td> + <td>1</td> + </tr> + <tr> + <td>1</td> + <td>1</td> + <td>0</td> + </tr> + </tbody> +</table> + +<pre class="brush: js">. 9 (Basis 10) = 00000000000000000000000000001001 (Basis 2) + 14 (Basis 10) = 00000000000000000000000000001110 (Basis 2) + -------------------------------- +14 ^ 9 (Basis 10) = 00000000000000000000000000000111 (Basis 2) = 7 (Basis 10) +</pre> + +<p>Bitweises verXORn jeder Zahl <code>x</code> mit <code>0</code> ergibt <code>x</code>. Bitweises verXORn jeder Zahl <code>x</code> mit <code>-1</code> ergibt <code>~x</code>.</p> + +<h3 id="(Bitweise_Negation)"><a name="Bitwise_NOT">~ (Bitweise Negation)</a></h3> + +<p>Führt die Negationsoperation auf jedem Bit durch. NICHT <code>a</code> ergibt ergibt den invertierten Wert (d. h. das Einerkomplement) von <code>a</code>. Die Wahrheitstabelle für den Negationsoperator ist:</p> + +<table class="standard-table"> + <tbody> + <tr> + <td class="header">a</td> + <td class="header">NICHT a</td> + </tr> + <tr> + <td>0</td> + <td>1</td> + </tr> + <tr> + <td>1</td> + <td>0</td> + </tr> + </tbody> +</table> + +<pre class="brush: js"> 9 (Basis 10) = 00000000000000000000000000001001 (Basis 2) + -------------------------------- +~9 (Basis 10) = 11111111111111111111111111110110 (Basis 2) = -10 (Basis 10) +</pre> + +<p>Bitweises Negieren jeder Zahl <code>x</code> ergibt <code>-(x + 1)</code>. Zum Beispiel ergibt <code>~-5</code> <code>4</code>.</p> + +<p>Beispiel mit <code>indexOf</code>:</p> + +<pre class="brush: js">var str = 'rawr'; +var searchFor = 'a'; + +// Das ist eine alternativer Weg um if (-1*str.indexOf('a') <= 0) zu tippen +if (~str.indexOf(searchFor)) { + // searchFor is in the string +} else { + // searchFor is not in the string +} + +// Hier die Werte, die von (~str.indexOf(searchFor)) zurück gegeben werden +// r == -1 +// a == -2 +// w == -3 +</pre> + +<h2 id="Bitweise_Verschiebeoperatoren">Bitweise Verschiebeoperatoren</h2> + +<p>Die bitweisen Verschiebeoperatoren (shift Operatoren) haben zwei Operanden: Der erste ist der Anteil, der verschoben werden soll und der zweite ist die Anzahl der Positionen, um die der erste Operand verschoben werden soll. Die Richtung der Verschiebung wird durch den eingesetzten Operator festgelegt.</p> + +<p>Verschiebeoperatoren konvertieren ihre Operanden in 32-Bit Integers in Bit-Endian Reihenfolge und geben als Resultat den gleichen Typ des linken Operanden zurück. Der rechte Operand sollte kleiner als 32 sein, aber wenn das nicht so ist, werden nur die kleinsten fünf Bits verwendet.</p> + +<h3 id="<<_(Linksverschiebung)"><a name="Left_shift"><< (Linksverschiebung)</a></h3> + +<p>Dieser Operator verschiebt den ersten Operand um die spezifizierte Anzahl von Bits nach links. Überflüssige Bits, die nach links verschoben wurden, werden verworfen. Von rechts wird mit 0-Bits aufgefüllt.</p> + +<p>Zum Beispiel ergibt <code>9 << 2</code> <code>36</code>:</p> + +<pre class="brush: js">. 9 (Basis 10): 00000000000000000000000000001001 (Basis 2) + -------------------------------- +9 << 2 (Basis 10): 00000000000000000000000000100100 (Basis 2) = 36 (Basis 10) +</pre> + +<p>Bitweises Verschieben jeder Zahl <code>x</code> nach links mit <code>y</code> Bits ergibt <code>x * 2 ** y</code>.</p> + +<h3 id=">>_(Vorzeichen_propagierende_Rechtsverschiebung)"><a name="Right_shift">>> (Vorzeichen propagierende Rechtsverschiebung)</a></h3> + +<p>Dieser Operator verschiebt den ersten Operand um die spezifizierte Anzahl von Bits nach rechts. Überflüssige Bits, die nach rechts verschoben wurden, werden verworfen. Kopien des linken Bits (Vorzeichenbits) werden von links hereingeschoben. Weil das neue Vorzeichenbit immer das selbe wie das alte Vorzeichenbit ist, ändert sich das linke Bit nicht. Daher kommt der Name "Vorzeichen propagierend" her.</p> + +<p>Zum Beispiel ergibt <code>9 >> 2</code> <code>2</code>:</p> + +<pre class="brush: js">. 9 (base 10): 00000000000000000000000000001001 (base 2) + -------------------------------- +9 >> 2 (base 10): 00000000000000000000000000000010 (base 2) = 2 (base 10) +</pre> + +<p>Likewise, <code>-9 >> 2</code> yields <code>-3</code>, because the sign is preserved:</p> + +<pre class="brush: js">. -9 (Basis 10): 11111111111111111111111111110111 (Basis 2) + -------------------------------- +-9 >> 2 (Basis 10): 11111111111111111111111111111101 (Basis 2) = -3 (Basis 10) +</pre> + +<h3 id=">>>_(Null_füllende_Rechtsverschiebung)"><a name="Unsigned_right_shift">>>> (Null füllende Rechtsverschiebung)</a></h3> + +<p>Dieser Operator verschiebt den ersten Operand um die spezifizierte Anzahl von Bits nach rechts. Überflüssige Bits, die nach rechts verschoben wurden, werden verworfen. Von link wird mit 0-Bits aufgefüllt. Das Vorzeichenbit wird 0, so dass das Ergebnis nie negativ ist.</p> + +<p>Für nicht negative Zahlen ist das Ergebnis bei der Null füllenden Rechtsverschiebung und bei der Vorzeichen propagierenden Rechtsverschiebung das selbe. Zum Beispiel ergibt <code>9 >>> 2</code> <code>2</code>, das selbe wie <code>9 >> 2</code>:</p> + +<pre class="brush: js">. 9 (Basis 10): 00000000000000000000000000001001 (Basis 2) + -------------------------------- +9 >>> 2 (Basis 10): 00000000000000000000000000000010 (Basis 2) = 2 (Basis 10) +</pre> + +<p>Jedoch ist das nicht der Fall für negative Zahlen. Zum Beispiel ergibt <code>-9 >>> 2</code> <code>1073741821</code>, was sich unterschiedet von <code>-9 >> 2</code> (was <code>-3</code> ergibt):</p> + +<pre class="brush: js">. -9 (Basis 10): 11111111111111111111111111110111 (Basis 2) + -------------------------------- +-9 >>> 2 (Basis 10): 00111111111111111111111111111101 (Basis 2) = 1073741821 (Basis 10) +</pre> + +<h2 id="Beispiele">Beispiele</h2> + +<h3 id="Flags_und_Bitmasken">Flags und Bitmasken</h3> + +<p>Die bitweisen logischen Operatoren werden häufig eingesetzt, um Sequenzen von Flags zu erstellen, zu manipulieren und zu lesen, welche wie binäre Variablen sind. Variablen können statt dieser Sequenzen genutzt werden, aber binäre Flags verbrauchen weniger Speicher (um den Faktor 32).</p> + +<p>Angenommen es gibt 4 Flags:</p> + +<ul> + <li>Flag A: Man hat ein Ameisenproblem</li> + <li>Flag B: Man besitzt eine Fledermaus</li> + <li>Flag C: Man besitzt eine Katze</li> + <li>Flag D: Man besitzt eine Ente</li> +</ul> + +<p>Diese Flags sind durch eine Sequenz von Bits repräsentiert: DCBA. Wenn ein Flag gesetzt wird, hat es den Wert 1. Wenn ein Flag geleert wird, hat es den Wert 0. Angenommen eine Variable <code>flags</code> hat den binären Wert 0101:</p> + +<pre class="brush: js">var flags = 5; // binär 0101 +</pre> + +<p>Dieser Wert zeigt an:</p> + +<ul> + <li>Flag A ist true (man hat ein Ameisenproblem);</li> + <li>Flag B ist false (man hat keine Fledermaus);</li> + <li>Flag C ist true (man hat eine Katze);</li> + <li>Flag D ist false (man hat keine Ente);</li> +</ul> + +<p>Weil Bitweise Operatoren mit 32-Bit arbeiten, ist 0101 eigentlich 00000000000000000000000000000101, aber die führenden nullen können vernachlässigt werden, weil sie keine Informationen enthalten.</p> + +<p>Eine Bitmaske ist eine Sequenz von Bits, die Flags manipulieren und/oder lesen kann. Typisch ist es, dass eine "primitive" Bitmaske für jedes Flag definiert ist:</p> + +<pre class="brush: js">var FLAG_A = 1; // 0001 +var FLAG_B = 2; // 0010 +var FLAG_C = 4; // 0100 +var FLAG_D = 8; // 1000 +</pre> + +<p>Neue Bitmasken können erstellt werden, indem bitweise logische Operatoren auf den primitiven Bitmasken angewendet werden. Zum Beispiel kann die Bitmaske 1011 mit VerODERn von FLAG_A, FLAG_B und FLAG_D erstellt werden:</p> + +<pre class="brush: js">var mask = FLAG_A | FLAG_B | FLAG_D; // 0001 | 0010 | 1000 => 1011 +</pre> + +<p>Individuelle Flagwerte können durch das VerUNDen mit einer Bitmaske extrahiert werden, wobei jedes Bit mit dem Wert eins das korrespondierende Flag extrahiert. Die Bitmaske wirft nicht relevante Flags heraus, indem Nullen verUNDet werden (daher der Begriff "Bitmaske"). Zum Beispiel kann die Bitmaske 0100 genutzt werden, um zu sehen, ob Flag C gesetzt ist:</p> + +<pre class="brush: js">// Wenn man eine Katze besitzt +if (flags & FLAG_C) { // 0101 & 0100 => 0100 => true + // tu irgendetwas +} +</pre> + +<p>Eine Bitmaske mit mehreren gesetzten Flags funktioniert wie ein "entweder/oder". Zum Beispiel sind die beiden folgenden Ansätze äquivalent:</p> + +<pre class="brush: js">// wenn man eine Fledermaus besitzt oder eine Katze besitzt +// (0101 & 0010) || (0101 & 0100) => 0000 || 0100 => true +if ((flags & FLAG_B) || (flags & FLAG_C)) { + // do stuff +} +</pre> + +<pre class="brush: js">// wenn man eine Fledermaus oder eine Katze besitzt +var mask = FLAG_B | FLAG_C; // 0010 | 0100 => 0110 +if (flags & mask) { // 0101 & 0110 => 0100 => true + // do stuff +} +</pre> + +<p>Flags können mit VerODERung mit einer Bitmaske gesetzt werden, wobei jedes Bit in der Bitmaske mit dem Wert 1 wird das korrespondierende Flag setzen, wenn es noch nicht gesetzt ist. Zum Beispiel kann die Bitmaske 1100 benutzt werden, um die Flags C und D zu setze:</p> + +<pre class="brush: js">// ja, man besitzt eine Katze und eine Ente +var mask = FLAG_C | FLAG_D; // 0100 | 1000 => 1100 +flags |= mask; // 0101 | 1100 => 1101 +</pre> + +<p>Flags können mit VerUNDung mit einer Bitmaske geleert werden, wobei jedes Bit in der Bitmaske mit dem Wert 0 wird das korrespondierende Flag geleert, wenn es noch nicht geleert ist. Die Bitmaske dafür kann mit Negation primitiver Bitmasken erstellt werden Zum Beispiel kann die Bitmaske 1010 benutzt werden, um die Flags A und C zu leeren:</p> + +<pre class="brush: js">// no, we don't have an ant problem or own a cat +var mask = ~(FLAG_A | FLAG_C); // ~0101 => 1010 +flags &= mask; // 1101 & 1010 => 1000 +</pre> + +<p>The mask could also have been created with <code>~FLAG_A & ~FLAG_C</code> (De Morgan's law):</p> + +<pre class="brush: js">// nein, mat hat kein Problem mit Ameisen und man besitzt keine Katze +var mask = ~FLAG_A & ~FLAG_C; +flags &= mask; // 1101 & 1010 => 1000 +</pre> + +<p>Flags können mit VerXORung mit einer Bitmaske umgeschaltet werden, wobei jedes Bit in der Bitmaske mit dem Wert 1 wird das korrespondierende Flag umschaltet. Zum Beispiel kann die Bitmaske 0110 benutzt werden, um die Flags B und C umzuschalten:</p> + +<pre class="brush: js">// wenn man keine Fledermaus besitzt und und jetzt eine bekommt +// and wenn man eine hat und die Fledermaus verabschiedet +// das gleiche für eine Katze +var mask = FLAG_B | FLAG_C; +flags = flags ^ mask; // 1100 ^ 0110 => 1010 +</pre> + +<p>Alle Flags können mit dem Negationsoperator umgedreht werden:</p> + +<pre class="brush: js">// entering parallel universe... +flags = ~flags; // ~1010 => 0101 +</pre> + +<h3 id="Konvertierungsbeispiele">Konvertierungsbeispiele</h3> + +<p>Konvertierung eines binär <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/String" title="/de/docs/JavaScript/Reference/Global_Objects/String">String</a></code> zu einer dezimal <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Number" title="/de/docs/JavaScript/Reference/Global_Objects/Number">Number</a></code>:</p> + +<pre class="brush: js">var sBinString = '1011'; +var nMyNumber = parseInt(sBinString, 2); +alert(nMyNumber); // prints 11, i.e. 1011 +</pre> + +<p>Konvertierung einer dezimal <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Number" title="/de/docs/JavaScript/Reference/Global_Objects/Number">Number</a></code> zu einem binär <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/String" title="/de/docs/JavaScript/Reference/Global_Objects/String">String</a></code>:</p> + +<pre class="brush: js">var nMyNumber = 11; +var sBinString = nMyNumber.toString(2); +alert(sBinString); // prints 1011, i.e. 11 +</pre> + +<h3 id="Bitmaskenerstellung_automatisieren">Bitmaskenerstellung automatisieren</h3> + +<p>Man kann, wie folgt, mehrere Masken von einer Menge von <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Boolean" title="/de/docs/JavaScript/Reference/Global_Objects/Boolean">Boolean</a></code> Werten erstellen:</p> + +<pre class="brush: js">function createMask() { + var nMask = 0, nFlag = 0, nLen = arguments.length > 32 ? 32 : arguments.length; + for (nFlag; nFlag < nLen; nMask |= arguments[nFlag] << nFlag++); + return nMask; +} +var mask1 = createMask(true, true, false, true); // 11, i.e.: 1011 +var mask2 = createMask(false, false, true); // 4, i.e.: 0100 +var mask3 = createMask(true); // 1, i.e.: 0001 +// etc. + +alert(mask1); // prints 11, i.e.: 1011 +</pre> + +<h3 id="Umgedrehter_Algorithmus_Ein_Array_von_Booleanen_von_einer_Bitmaske">Umgedrehter Algorithmus: Ein Array von Booleanen von einer Bitmaske</h3> + +<p>Wenn man ein <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Array" title="/de/docs/JavaScript/Reference/Global_Objects/Array">Array</a></code> mit <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Boolean" title="/de/docs/JavaScript/Reference/Global_Objects/Boolean">Boolean</a></code> Werten von einer Bitmaske haben möchte, kann man folgenden Code benutzen:</p> + +<pre class="brush: js">function arrayFromMask(nMask) { + // nMask must be between -2147483648 and 2147483647 + if (nMask > 0x7fffffff || nMask < -0x80000000) { + throw new TypeError('arrayFromMask - out of range'); + } + for (var nShifted = nMask, aFromMask = []; nShifted; + aFromMask.push(Boolean(nShifted & 1)), nShifted >>>= 1); + return aFromMask; +} + +var array1 = arrayFromMask(11); +var array2 = arrayFromMask(4); +var array3 = arrayFromMask(1); + +alert('[' + array1.join(', ') + ']'); +// prints "[true, true, false, true]", i.e.: 11, i.e.: 1011 +</pre> + +<p>Man kann beide Algorithmen gleichzeitig testen:</p> + +<pre class="brush: js">var nTest = 19; // our custom mask +var nResult = createMask.apply(this, arrayFromMask(nTest)); + +alert(nResult); // 19 +</pre> + +<p>Nur aus didaktischen Gründen (weil dort die <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Number/toString" title="/de/docs/JavaScript/Reference/Global_Objects/Number/toString">Number.toString(2)</a></code> Methode ist), zeigen wir, wie es möglich ist den <code>arrayFromMask</code> Algorithmus zu verändern, um einen <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/String" title="/de/docs/JavaScript/Reference/Global_Objects/String">String</a></code> mit der Binärrepräsentation der <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Number" title="/de/docs/JavaScript/Reference/Global_Objects/Number">Number</a></code> statt eines <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Array" title="/de/docs/JavaScript/Reference/Global_Objects/Array">Array</a></code>s von <code><a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Boolean" title="/de/docs/JavaScript/Reference/Global_Objects/Boolean">Boolean</a></code>en:</p> + +<pre class="brush: js">function createBinaryString(nMask) { + // nMask must be between -2147483648 and 2147483647 + for (var nFlag = 0, nShifted = nMask, sMask = ''; nFlag < 32; + nFlag++, sMask += String(nShifted >>> 31), nShifted <<= 1); + return sMask; +} + +var string1 = createBinaryString(11); +var string2 = createBinaryString(4); +var string3 = createBinaryString(1); + +alert(string1); +// prints 00000000000000000000000000001011, i.e. 11 +</pre> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-11.7')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td>Definiert in verschiedenen Abschnitten der Spezifikation: <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.4.8">Bitwise NOT operator</a>, <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.7">Bitwise shift operators</a>, <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.10">Binary bitwise operators</a></td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-bitwise-shift-operators')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>Definiert in verschiedenen Abschnitten der Spezifikation: <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-bitwise-not-operator">Bitwise NOT operator</a>, <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-bitwise-shift-operators">Bitwise shift operators</a>, <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-binary-bitwise-operators">Binary bitwise operators</a></td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-bitwise-shift-operators')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td>Definiert in verschiedenen Abschnitten der Spezifikation: <a href="http://tc39.github.io/ecma262/#sec-bitwise-not-operator">Bitwise NOT operator</a>, <a href="http://tc39.github.io/ecma262/#sec-bitwise-shift-operators">Bitwise shift operators</a>, <a href="http://tc39.github.io/ecma262/#sec-binary-bitwise-operators">Binary bitwise operators</a></td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div class="hidden"> +<p>The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> +</div> + +<p>{{Compat("javascript.operators.bitwise")}}</p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li><a href="/de/docs/Web/JavaScript/Reference/Operators/Logical_Operators">Logische Operatoren</a></li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/operators/spread_syntax/index.html b/files/de/conflicting/web/javascript/reference/operators/spread_syntax/index.html new file mode 100644 index 0000000000..ee125663f4 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/operators/spread_syntax/index.html @@ -0,0 +1,220 @@ +--- +title: Spread-Operator +slug: Web/JavaScript/Reference/Operators/Spread_operator +tags: + - ECMAScript 2015 + - Iterator + - JavaScript + - Operator +translation_of: Web/JavaScript/Reference/Operators/Spread_syntax +translation_of_original: Web/JavaScript/Reference/Operators/Spread_operator +--- +<div>{{jsSidebar("Operators")}}</div> + +<p>Mit der <strong>Spread-Syntax</strong> kann ein einzelner Ausdruck dort expandiert werden, wo mehrere Argumente (bei Funktionsaufrufen), mehrere Elemente (für Array-Literale) oder mehrere Variablen (für destrukturierende Anweisungen) erwartet werden.</p> + +<h2 id="Syntax">Syntax</h2> + +<p>Für Funktionsaufrufe:</p> + +<pre class="brush: js">myFunction(...iterableObj); +</pre> + +<p>Für Array-Literale:</p> + +<pre class="brush: js">[...iterableObj, 4, 5, 6]</pre> + +<h2 id="Beispiele">Beispiele</h2> + +<h3 id="Ein_besseres_apply">Ein besseres "apply"</h3> + +<p><strong>Beispiel:</strong> Für gewöhnlich wird {{jsxref( "Function.prototype.apply")}} verwendet, wenn man die Elemente eines Arrays als Argumente eines Funktionsaufrufs nutzen möchte:</p> + +<pre class="brush: js">function myFunction(x, y, z) { } +var args = [0, 1, 2]; +myFunction.apply(null, args);</pre> + +<p>Mit dem ES2015 Spread-Operator kann das nun wie folgt geschrieben werden:</p> + +<pre class="brush: js">function myFunction(x, y, z) { } +var args = [0, 1, 2]; +myFunction(...args);</pre> + +<p>Die Spread-Syntax kann für jedes beliebige Argument der Argumentliste verwendet werden, und sie kann auch mehrmals verwendet werden:</p> + +<pre class="brush: js">function myFunction(v, w, x, y, z) { } +var args = [0, 1]; +myFunction(-1, ...args, 2, ...[3]);</pre> + +<h3 id="Ein_mächtigeres_Array-Literal">Ein mächtigeres Array-Literal</h3> + +<p><strong>Beispiel:</strong> Wenn man ohne den Spread-Operator ein neues Array erstellen will, bei dem ein Teil davon ein bereits bestehendes Array sein soll, dann ist die Array-Literal-Syntax nicht mehr ausreichend und man muss auf imperative Programmierung mit einer Kombination aus <code>push</code>, <code>splice</code>, <code>concat</code>, etc. zurückgreifen. Mit der Spread-Syntax jedoch kann das viel prägnanter ausgedrückt werden:</p> + +<pre class="brush: js">var parts = ['shoulders', 'knees']; +var lyrics = ['head', ...parts, 'and', 'toes']; // <span class="objectBox objectBox-array"><a class="objectLink "><span class="arrayLeftBracket">[</span></a><span class="objectBox objectBox-string">"head"</span><span class="arrayComma">, </span><span class="objectBox objectBox-string">"shoulders"</span><span class="arrayComma">, </span><span class="objectBox objectBox-string">"knees"</span><span class="arrayComma">, </span><span class="objectBox objectBox-string">"and"</span><span class="arrayComma">, </span><span class="objectBox objectBox-string">"toes"</span></span>] +</pre> + +<p>Genau wie der Spread-Operator für Argumentlisten kann <code>...</code> überall im Array-Literal verwendet werden, auch mehrmals.</p> + +<h3 id="Apply_für_new">"Apply" für "new"</h3> + +<p><strong>Beispiel:</strong> In ES5 kann <code>new</code> nicht mit <code>apply</code> kombiniert werden (nach den ES5-Regeln führt <code>apply</code> einen <code>[[Call]]</code> aus, keinen <code>[[Construct]]</code>). Die Spread-Syntax von ES2015 unterstützt dies auf ganz natürliche Weise:</p> + +<pre class="brush: js">var dateFields = readDateFields(database); +var d = new Date(...dateFields);</pre> + +<h3 id="Ein_Array_kopieren">Ein Array kopieren</h3> + +<pre>var arr = [1,2,3]; +var arr2 = [...arr]; // wie arr.slice() +arr2.push(4); // arr2 wird [1,2,3,4], arr bleibt unverändert.</pre> + +<h3 id="Ein_besseres_push">Ein besseres "push"</h3> + +<p><strong>Beispiel:</strong> {{jsxref("Global_Objects/Array/push", "push")}} wird oft verwendet um alle Elemente eines Arrays an das Ende eines bestehenden Arrays anzuhängen. Das wird in ES5 oft wie folgt umgesetzt:</p> + +<pre class="brush: js">var arr1 = [0, 1, 2]; +var arr2 = [3, 4, 5]; +// Append all items from arr2 onto arr1 +Array.prototype.push.apply(arr1, arr2);</pre> + +<p>Mit dem Spread-Operator von ES2015 wird daraus:</p> + +<pre class="brush: js">var arr1 = [0, 1, 2]; +var arr2 = [3, 4, 5]; +arr1.push(...arr2);</pre> + +<h3 id="Nur_apply_für_iterables">Nur "apply" für iterables</h3> + +<pre>var obj = {"key1":"value1"}; +function myFunction(x) { + console.log(x) // undefined +} +myFunction(...obj); +var args = [...obj]; +console.log(args, args.length); // [] 0</pre> + +<h2 id="Rest-Syntax_(Parameter)">Rest-Syntax (Parameter)</h2> + +<p>Rest-Syntax sieht genauso aus wie die Spread-Syntax und wird für das Destrukturieren von Arrays und Objekten eingesetzt. Rest-Syntax ist sozusagen das Gegenteil von Spread-Syntax: Spread klappt die einzelnen Bestandteile eines Arrays aus, während Rest verschiedene einzelne Elemente zu einem Array zusammenfasst.</p> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('ES2015', '#sec-array-initializer')}}</td> + <td>{{Spec2('ES2015')}}</td> + <td>Definiert in verschiedenen Abschnitten der Spezifikation: <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-array-initializer">Array Initializer</a>, <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-argument-lists">Argument Lists</a></td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-array-initializer')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browser-Kompatibilität">Browser-Kompatibilität</h2> + +<p>{{CompatibilityTable}}</p> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Feature</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari (WebKit)</th> + </tr> + <tr> + <td>Spread-Operation innerhalb von Array-Literalen</td> + <td>{{CompatChrome("46")}}</td> + <td>{{CompatGeckoDesktop("16")}}</td> + <td>{{CompatIE("Edge")}}</td> + <td>{{CompatNo}}</td> + <td>7.1</td> + </tr> + <tr> + <td>Spread-Operation innerhalb von Funktionsaufrufen</td> + <td>{{CompatChrome("46")}}</td> + <td>{{CompatGeckoDesktop("27")}}</td> + <td>{{CompatIE("Edge")}}</td> + <td>{{CompatNo}}</td> + <td>7.1</td> + </tr> + <tr> + <td>Spread-Operation beim Destrukturieren ("destructuring")</td> + <td>{{CompatChrome("49")}}</td> + <td>{{CompatGeckoDesktop("34")}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>Feature</th> + <th>Android</th> + <th>Android Webview</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + <th>Chrome for Android</th> + </tr> + <tr> + <td>Spread-Operation innerhalb von Array-Literalen</td> + <td>{{CompatNo}}</td> + <td>{{CompatChrome("46")}}</td> + <td>{{CompatGeckoMobile("16")}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + <td>8</td> + <td>{{CompatChrome("46")}}</td> + </tr> + <tr> + <td>Spread-Operation innerhalb von Funktionsaufrufen</td> + <td>{{CompatNo}}</td> + <td>{{CompatChrome("46")}}</td> + <td>{{CompatGeckoMobile("27")}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + <td>8</td> + <td>{{CompatChrome("46")}}</td> + </tr> + <tr> + <td>Spread-Operation beim Destrukturieren ("destructuring")</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatGeckoDesktop("34")}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatNo}}</td> + </tr> + </tbody> +</table> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li><a href="/de/docs/Web/JavaScript/Reference/Functions_and_function_scope/rest_parameters">Rest Parameter</a></li> + <li><a href="http://exploringjs.com/es6/ch_destructuring.html#sec_rest-operator">Rest Operator</a></li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/operators_5b3986b830cf68059c03079ef10ff039/index.html b/files/de/conflicting/web/javascript/reference/operators_5b3986b830cf68059c03079ef10ff039/index.html new file mode 100644 index 0000000000..ceedd1eb07 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/operators_5b3986b830cf68059c03079ef10ff039/index.html @@ -0,0 +1,244 @@ +--- +title: Vergleichsoperatoren +slug: Web/JavaScript/Reference/Operators/Vergleichsoperatoren +tags: + - JavaScript + - Operator + - Reference +translation_of: Web/JavaScript/Reference/Operators +translation_of_original: Web/JavaScript/Reference/Operators/Comparison_Operators +--- +<div>{{jsSidebar("Operators")}}</div> + +<p>JavaScript kennt sowohl den strikten als auch den Typ konvertierenden Vergleich. Ein strikter Vergleich (z. B. <code>===</code>) gibt nur true zurück, wenn der gleiche Typ und der gleiche Wert vorhanden sind. Der häufiger verwendete abstrakte Vergleich (z. B. <code>==</code>) wandelt die Operanden in den gleichen Typen um, bevor sie verglichen werden. Bei relationalen Vergleichsoperatoren (z. B. <code><=</code>) werden die Operanden vor dem Vergleich zuerst in elementare Datentypen konvertiert und dann in gleiche Typen umgewandelt.</p> + +<p>Strings werden entsprechend der lexikographischen Ordnung, basierend auf den Unicode, verglichen.</p> + +<div>{{EmbedInteractiveExample("pages/js/expressions-comparisonoperators.html")}}</div> + + + +<p>Merkmale von Vergleichen:</p> + +<ul> + <li>Zwei Strings sind strikt gleich, wenn sie die gleiche Abfolge von Zeichen, die gleiche Länge und die gleichen Zeichen in übereinstimmenden Positionen haben.</li> + <li>Zwei Zahlen sind strikt gleich, wenn sie numerisch gleich sind (den gleichen Zahlwert haben). <a href="/de/docs/Web/JavaScript/Reference/Global_Objects/NaN" title="NaN">NaN</a> ist mit nichts gleich, auch nicht mit sich selbst. +0 und -0 sind strikt gleich zueinander.</li> + <li>Zwei Boolesche Operanden sind exakt gleich wenn beide <code>true</code> oder beide <code>false</code> sind.</li> + <li>Zwei unterschiedliche Objekte sind niemals gleich, weder in strikten noch nicht-strikten Vergleichen.</li> + <li>Ein Ausdruck, der Objekte vergleicht, gilt nur als <code>true</code>, wenn die Operanden auf das gleiche Objekt zeigen.</li> + <li>Die Typen <code>Null</code> und <code>undefined</code> sind immer strikt gleich zu sich selbst und abstrakt gleich zueinander.</li> +</ul> + +<h2 id="Gleichheitsoperatoren">Gleichheitsoperatoren</h2> + +<h3 id="Gleichheit_()">Gleichheit (==)</h3> + +<p>Der Gleichheitsoperator konvertiert die Operanden, wenn sie <strong>nicht vom gleichen Typs</strong> sind und prüft dann auf strikte Gleichheit. Sind <strong>beide Operanden Objekte</strong>, vergleicht JavaScript die Referenzen; Referenzen gelten als gleich, wenn sie auf das gleiche Objekt im Speicher zeigen.</p> + +<h4 id="Syntax">Syntax</h4> + +<pre class="syntaxbox">x == y +</pre> + +<h4 id="Beispiele">Beispiele</h4> + +<pre class="brush: js">1 == 1 // true +'1' == 1 // true +1 == '1' // true +0 == false // true +0 == null // false +var object1 = {'key': 'value'}, object2 = {'key': 'value'} +object1 == object2 // false +0 == undefined // false +null == undefined // true +</pre> + +<h3 id="Ungleichheit_(!)">Ungleichheit (!=)</h3> + +<p>Der Ungleichheitsoperator gibt true zurück, wenn die Operanden nicht gleich sind. Wenn die beiden Operanden <strong>nicht vom gleichen Typ </strong>sind, versucht JavaScript die Operanden in einen, für den Vergleich passenden Typ, umzuwandeln. Wenn <strong>beide Operanden Objekte sind</strong>, vergleicht JavaScript die Referenzen; Referenzen sind ungleich, wenn sie auf verschiedene Objekte im Speicher verweisen.</p> + +<p>Syntax</p> + +<pre class="syntaxbox">x != y</pre> + +<h4 id="Beispiele_2">Beispiele</h4> + +<pre class="brush: js">1 != 2 // true +1 != "1" // false +1 != '1' // false +1 != true // false +0 != false // false +</pre> + +<h3 id="Identität_strikte_Gleichheit_()">Identität / strikte Gleichheit (===)</h3> + +<p>Der Identitätsoperator gibt true zurück, wenn die Operanden strikt gleich sind (siehe oben) <strong>ohne eine Typkonvertierung</strong></p> + +<h4 id="Syntax_2">Syntax</h4> + +<pre class="syntaxbox">x === y</pre> + +<h4 id="Beispiele_3">Beispiele</h4> + +<pre class="brush: js ">3 === 3 // true +3 === '3' // false +var object1 = {'key': 'value'}, object2 = {'key': 'value'} +object1 === object2 // false +</pre> + +<h3 id="Nicht_identisch_Strikte_Ungleichheit_(!)">Nicht identisch / Strikte Ungleichheit (!==)</h3> + +<p>Der strikte Ungleichheitsoperator gibt true zurück, wenn die Operanden<strong> nicht vom gleichen Typ sind bzw. ungleich sind</strong>.</p> + +<h4 id="Syntax_3">Syntax</h4> + +<pre class="syntaxbox">x !== y</pre> + +<h4 id="Beispiele_4">Beispiele</h4> + +<pre class="brush: js">3 !== '3' // true +4 !== 3 // true +</pre> + +<h2 id="Relationale_Operatoren">Relationale Operatoren</h2> + +<p>Jeder dieser Operatoren wird die <code>valueOf()</code> Funktion aufrufen, bevor ein Vergleich durchgeführt wird.</p> + +<h3 id="Größer-als-Operator_(>)">Größer-als-Operator (>)</h3> + +<p>Der Größer-als-Operator gibt true zurück, wenn der linke Operand größer als der rechte Operand ist.</p> + +<h4 id="Syntax_4">Syntax</h4> + +<pre class="syntaxbox">x > y</pre> + +<h4 id="Beispiele_5">Beispiele</h4> + +<pre class="brush: js">4 > 3 // true +</pre> + +<h3 id="Größer-oder-gleich-Operator_(>)">Größer-oder-gleich-Operator (>=)</h3> + +<p>Der Größer-oder-gleich-Operator gibt true zurück, wenn der linke Operand größer als oder gleich dem rechten Operanden ist.</p> + +<h4 id="Syntax_5">Syntax</h4> + +<pre class="syntaxbox"> x >= y</pre> + +<h4 id="Beispiele_6">Beispiele</h4> + +<pre class="brush: js">4 >= 3 // true +3 >= 3 // true +</pre> + +<h3 id="Kleiner-als-Operator_(<)">Kleiner-als-Operator (<)</h3> + +<p>Der Kleiner-als-Operator gibt true zurück, wenn der linke Operand kleiner als der rechte Operand ist.</p> + +<h4 id="Syntax_6">Syntax</h4> + +<pre class="syntaxbox"> x < y</pre> + +<h4 id="Beispiele_7">Beispiele</h4> + +<pre class="brush: js">3 < 4 // true +</pre> + +<h3 id="Kleiner-oder-gleich-Operator_(<)">Kleiner-oder-gleich-Operator (<=)</h3> + +<p>Der Kleiner-oder-gleich-Operator gibt true zurück, wenn der linke Operand kleiner oder gleich dem rechten Operanden ist.</p> + +<h4 id="Syntax_7">Syntax</h4> + +<pre class="syntaxbox"> x <= y</pre> + +<h4 id="Beispiele_8">Beispiele</h4> + +<pre class="brush: js">3 <= 4 // true +</pre> + +<h2 id="Die_Gleichheitsoperatoren_anwenden">Die Gleichheitsoperatoren anwenden</h2> + +<p>Die Standard-Gleichheitsoperatoren (<code>==</code> und <code>!=</code>) benutzen den <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.9.3">Abstract Equality Comparison Algorithmus</a>, um zwei Operanden zu vergleichen. Sind die Operanden unterschiedlichen Typs, wird vor dem Vergleich zuerst versucht sie in gleiche Typen umzuwandeln; z.B. wird beim Ausdruck <code>5 == '5'</code> das Zeichen auf der rechten Seite in eine Zahl konvertiert.</p> + +<p>Die strikten Gleichheitsoperatoren (<code>===</code> und <code>!==</code>) benutzen den <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.9.6">Strict Equality Comparison Algorithmus</a> und sind dafür gedacht, Operanden des gleichen Typs zu vergleichen. Wenn die Operanden von unterschiedlichen Typen sind, ist das Ergebnis immer <code>false</code>, wie <code>5 !== '5'</code>.</p> + +<p>Strikte Gleichheitsoperatoren sollten verwendet werden, wenn die Operanden sowohl einen bestimmten Typen als auch Wert haben sollen. Ansonsten benutzt man die abstrakten Gleichheitsoperatoren, die es einem erlauben Operanden unterschiedlicher Typen zu vergleichen.</p> + +<p>Wenn beim Vergleich eine Typkonvertierung vorgenommen wird (z.B. beim nicht-strikten Vergleich), konvertiert JavaScript in die Typen {{jsxref("String")}}, {{jsxref("Number")}}, {{jsxref("Boolean")}} und {{jsxref("Object")}} und führt den Vergleich dann aus:</p> + +<ul> + <li>Wenn eine Zahl und eine Zeichenkette verglichen werden, wird die Zeichenkette zu einem Zahlenwert umgewandelt. JavaScript versucht das numerische Zeichenliteral in einen Wert des Typs <code>Number</code> zu wandeln. Zuerst wird der mathematische Wert des numerischen Zeichenliterals ermittelt. Danach wird der Wert auf den nächsten Wert des Typs <code>Number</code> gerundet.</li> + <li>Wenn einer der Operanden ein Boolescher Typ ist, wird der Operand zur 1 konveriert wenn er <code>true</code> ist und zur +0 wenn <code>false</code>.</li> + <li>Wenn ein Objekt mit einer Zahl oder einer Zeichenkette verglichen wird, versucht JavaScript den Defaultwert für das Objekt zurückzugeben. Operatoren versuchen das Objekt in einen elementaren Wert (<code>String</code> oder <code>Number)</code> umzuwandeln, indem sie die <code>valueOf</code> und <code>toString</code> Methoden der Objekte benutzen. Kann ein Objekt nicht umgewandelt werden, wird ein Laufzeitfehler erzeugt.</li> + <li>Ein Objekt wird nur dann in einen elementaren Datentypen umgewandelt, wenn sein Vergleichsoperand ein elementarer Datentyp ist. Sind beide Operanden Objekte, werden sie als Objekte verglichen und der Gleichheitstest liefert nur dann true, wenn beide auf das gleiche Objekt zeigen.</li> +</ul> + +<div class="note"><strong>Hinweis:</strong> String Objekte sind vom Typ Objekte, nicht String! String Objekte werden selten eingesetzt, so dass das folgende Ergebnis überraschend sein kann:</div> + +<pre class="brush:js">// true, da beide Operanden vom Typ String sind (string primitives) +'foo' === 'foo' + +var a = new String('foo'); +var b = new String('foo'); + +// false, da a und b auf verschiedene Objekte zeigen +a == b + +// false, da a und b auf verschiedene Objekte zeigen +a === b + +// true, da a und 'foo' verschiedene Typen sind und das Objekt (a) +// vor dem Vergleich zum String 'foo' umgewandelt wird +a == 'foo' </pre> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initial Definition. Implementiert in JavaScript 1.0</td> + </tr> + <tr> + <td>{{SpecName('ES3')}}</td> + <td>{{Spec2('ES3')}}</td> + <td>Fügt <code>===</code> und <code>!==</code> Operatoren hinzu. Implementiert in JavaScript 1.3</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-11.8')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td>In verschiedenen Kapiteln der Spezifikation definiert: <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.8">Relational Operators</a>, <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.9">Equality Operators</a></td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-relational-operators')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>In verschiedenen Kapiteln der Spezifikation definiert: <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-relational-operators">Relational Operators</a>, <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-equality-operators">Equality Operators</a></td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-relational-operators')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td>In verschiedenen Kapiteln der Spezifikation definiert: <a href="http://tc39.github.io/ecma262/#sec-relational-operators">Relational Operators</a>, <a href="http://tc39.github.io/ecma262/#sec-equality-operators">Equality Operators</a></td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + + + +<p>{{Compat("javascript.operators.comparison")}}</p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Object.is()")}}</li> + <li>{{jsxref("Math.sign()")}}</li> + <li><a href="/de/docs/Web/JavaScript/Equality_comparisons_and_sameness">Equality comparisons and sameness</a></li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/operators_8b4515dbed18a24ecb01bfe0755ca163/index.html b/files/de/conflicting/web/javascript/reference/operators_8b4515dbed18a24ecb01bfe0755ca163/index.html new file mode 100644 index 0000000000..6a20e85b79 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/operators_8b4515dbed18a24ecb01bfe0755ca163/index.html @@ -0,0 +1,247 @@ +--- +title: Logische Operatoren +slug: Web/JavaScript/Reference/Operators/Logische_Operatoren +tags: + - JavaScript + - Logic + - Logical Operators + - Not + - Operator + - Reference + - and + - or +translation_of: Web/JavaScript/Reference/Operators +translation_of_original: Web/JavaScript/Reference/Operators/Logical_Operators +--- +<div>{{jsSidebar("Operators")}}</div> + +<p>Logische Operatoren werden typischerweise im Zusammenhang mit {{jsxref("Boolean")}} (logischen) Werten verwendet. Die Operatoren <code>&&</code> (Logisches UND) und <code>||</code> (Logisches ODER) geben dabei den Wert von einem der Operanden zurück. Sind die Operanden mit nicht-booleschen Werten belegt, geben diese Operatoren entsprechend nicht-boolesche Werte zurück.</p> + +<div>{{EmbedInteractiveExample("pages/js/expressions-logicaloperator.html")}}</div> + + + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>In der folgenden Tabelle werden die logischen Operatoren erläutert.</p> + +<table class="fullwidth-table"> + <tbody> + <tr> + <th>Operator</th> + <th>Verwendung</th> + <th>Beschreibung</th> + </tr> + <tr> + <td>Logisches UND (<code>&&</code>)</td> + <td><code><em>ausdruck1</em> && <em>ausdruck2</em></code></td> + <td>Gibt <code>ausdruck1</code> zurück, wenn er zu <code>false</code> konvertiert werden kann; anderfalls wird <code>ausdruck2</code> zurückgegeben. Sind beide Operanden <code>true</code>, gibt <code>&&</code> <code>true</code> zurück, Andernfalls <code>false</code>.</td> + </tr> + <tr> + <td>Logisches ODER (<code>||</code>)</td> + <td><code><em>ausdruck1</em> || <em>ausdruck2</em></code></td> + <td>Gibt <code>ausdruck1</code> zurück, wenn er zu <code>true</code> konvertiert werden kann; andernfalls wird <code>ausdruck2</code> zurückgegeben. Ist einer der Operanden <code>true</code>, gibt <code>||</code> <code>true</code> zurück.</td> + </tr> + <tr> + <td>Logisches NICHT (<code>!</code>)</td> + <td><code>!<em>ausdruck</em></code></td> + <td>Gibt <code>false</code> zurück, wenn der Operand zu <code>true</code> konvertiert werden kann. Andernfalls wird <code>true</code> zurückgegeben.</td> + </tr> + </tbody> +</table> + +<p>Wenn ein Wert zu <code>true</code> konvertiert werden kann, wird er {{Glossary("truthy")}} genannt. Wenn ein Wert zu <code>false</code> konvertiert werden kann, wird er {{Glossary("falsy")}} genannt.</p> + +<p>Beispiele für Ausdrücke, die zu <code>false</code> konvertiert werden können:</p> + +<ul> + <li><code>null</code></li> + <li>NaN</li> + <li><code>0</code></li> + <li>leerer String (<code>""</code> oder <code>''</code>)</li> + <li><code>undefined</code></li> +</ul> + +<p>Auch wenn die Operatoren <code>&&</code> und <code>||</code> mit nichtbooleschen Operanden verwendet werden können, gehören sie trotzdem zur Gruppe der logischen Operatoren, da ihre Rückgabewerte immer zu booleschen Werten konvertiert werden können.</p> + +<h3 id="Kurschlussauswertung_(Short-Circuit_Evaluation)">Kurschlussauswertung (Short-Circuit Evaluation)</h3> + +<p>Logische Ausdrücke werden von links nach rechts ausgewertet und hierbei wird anhand der folgenden Regeln getestet, ob Kurzschlussauswertungen möglich sind:</p> + +<ul> + <li><code>false && (<em>irgendwas)</em></code> wird kurzerhand zu false.</li> + <li><code>true || (<em>irgendwas)</em></code> wird kurzerhand zu true.</li> +</ul> + +<p>Die Regeln der Logik garantieren, dass diese Auswertungen immer korrekt sind. Zu beachten ist, dass der <em><code>irgendwas</code></em> Teil nicht ausgewertet wird, so dass keine Seiteneffekte die von diesem Teil ausgehen ausgeführt werden. Zu beachten ist zudem, dass der <em><code>irgendwas</code></em> Teil ein einzelner Ausdruck ist (wie die Klammern anzeigen).</p> + +<p>Beispielhaft betrachten wir die folgenden äquivalenten Funktionen:</p> + +<pre class="brush: js">function shortCircuitEvaluation() { + // Logisches ODER (||) + doSomething() || doSomethingElse(); + + // Logisches UND (&&) + doSomething() && doSomethingElse(); +} + +function equivalentEvaluation() { + + // Logisches ODER (||) + var orFlag = doSomething(); + if (!orFlag) { + doSomethingElse(); + } + + // Logisches UND (&&) + var andFlag = doSomething(); + if (andFlag) { + doSomethingElse(); + } +} +</pre> + +<p>Die folgenden Ausdrücke sind aufgrund der <a href="/de/docs/Web/JavaScript/Reference/Operators/Operator_Precedence">Operatorrangfolgen</a> nicht äquivalent und betont, wie wichtig es ist, dass der rechte Operand ein einzelner Ausdruck ist (gruppiert, falls in Klammern erforderlich).</p> + +<pre class="brush: js">false && true || true // wird zu true +false && (true || true) // wird zu false</pre> + +<h3 id="Logisches_UND_()"><a id="Logical_AND" name="Logical_AND">Logisches UND (<code>&&</code>)</a></h3> + +<p>Im Folgenden sind Beispiele des <code>&&</code> (logisches UND) Operators zu sehen.</p> + +<pre class="brush: js">a1 = true && true // t && t wird zu true +a2 = true && false // t && f wird zu false +a3 = false && true // f && t wird zu false +a4 = false && (3 == 4) // f && f wird zu false +a5 = 'Cat' && 'Dog' // t && t wird zu "Dog" +a6 = false && 'Cat' // f && t wird zu false +a7 = 'Cat' && false // t && f wird zu false +a8 = '' && false // f && f wird zu "" +a9 = false && '' // f && f wird zu false +</pre> + +<h3 id="Logisches_ODER_()"><a name="Logical_OR">Logisches ODER (<code>||</code>)</a></h3> + +<p>Im Folgenden sind Beispiele des <code>||</code> (logisches ODER) Operators zu sehen.</p> + +<pre class="brush: js">o1 = true || true // t || t wird zu true +o2 = false || true // f || t wird zu true +o3 = true || false // t || f wird zu true +o4 = false || (3 == 4) // f || f wird zu false +o5 = 'Cat' || 'Dog' // t || t wird zu "Cat" +o6 = false || 'Cat' // f || t wird zu "Cat" +o7 = 'Cat' || false // t || f wird zu "Cat" +o8 = '' || false // f || f wird zu false +o9 = false || '' // f || f wird zu "" +</pre> + +<h3 id="Logisches_NICHT_(!)"><a name="Logical_NOT">Logisches NICHT (<code>!</code>)</a></h3> + +<p>Im Folgenden sind Beispiele des <code>!</code> (logisches NICHT) Operators zu sehen.</p> + +<pre class="brush: js">n1 = !true // !t wird zu false +n2 = !false // !f wird zu true +n3 = !"Cat" // !t wird zu false +</pre> + +<h3 id="Konvertierungsregeln">Konvertierungsregeln</h3> + +<h4 id="Konvertierung_von_UND_zu_ODER">Konvertierung von UND zu ODER</h4> + +<p>Die folgende Operation nutzt Booleane:</p> + +<pre class="brush: js">bCondition1 && bCondition2</pre> + +<p>ist äquivalent zum folgenden Ausdruck:</p> + +<pre class="brush: js">!(!bCondition1 || !bCondition2)</pre> + +<h4 id="Konvertierung_von_ODER_zu_UND">Konvertierung von ODER zu UND</h4> + +<p>Die folgende Operation nutzt Booleane:</p> + +<pre class="brush: js">bCondition1 || bCondition2</pre> + +<p>ist äquivalent zu folgendem Ausdruck:</p> + +<pre class="brush: js">!(!bCondition1 && !bCondition2)</pre> + +<h4 id="Negierung_des_logischen_NICHT">Negierung des logischen NICHT</h4> + +<p>Die folgende Operation nutzt Booleane:</p> + +<pre class="brush: js">!!bCondition</pre> + +<p>ist äquivalent mit:</p> + +<pre class="brush: js">bCondition</pre> + +<h3 id="Klammern_in_logischen_Ausdrücken_auflösen">Klammern in logischen Ausdrücken auflösen</h3> + +<p>Ein logischer Ausdruck wird von links nach rechts ausgewertet. Es ist immer möglich runde Klammern von einem komplexen Ausdruck zu entfernen, wenn einige Regeln beachtet werden.</p> + +<h4 id="Geschachteltes_AND_entfernen">Geschachteltes AND entfernen</h4> + +<p>Die folgende Operation nutzt Booleane:</p> + +<pre class="brush: js">bCondition1 || (bCondition2 && bCondition3)</pre> + +<p>ist äquivalent mit:</p> + +<pre class="brush: js">bCondition1 || bCondition2 && bCondition3</pre> + +<h4 id="Geschachteltes_OR_entfernen">Geschachteltes OR entfernen</h4> + +<p>Die folgende Operation nutzt Booleane:</p> + +<pre class="brush: js">bCondition1 && (bCondition2 || bCondition3)</pre> + +<p>ist äquivalent mit:</p> + +<pre class="brush: js">!(!bCondition1 || !bCondition2 && !bCondition3)</pre> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES1')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initiale Definition.</td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-11.11')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td>Definiert in mehreren Kapiteln der Spezifikation: <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.4.9">Logical NOT Operator</a>, <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-11.11">Binary Logical Operators</a></td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-binary-logical-operators')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>Definiert in mehreren Kapiteln der Spezifikation: <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-logical-not-operator">Logical NOT Operator</a>, <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-binary-logical-operators">Binary Logical Operators</a></td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-binary-logical-operators')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td>Definiert in mehreren Kapiteln der Spezifikation: <a href="http://tc39.github.io/ecma262/#sec-logical-not-operator">Logical NOT Operator</a>, <a href="http://tc39.github.io/ecma262/#sec-binary-logical-operators">Binary Logical Operators</a></td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + + + +<p>{{Compat("javascript.operators.logical")}}</p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Operators/Bitwise_Operators", "Bitweise Operatoren")}}</li> + <li>{{jsxref("Boolean")}}</li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/operators_bf514126b51a6e9b7591809ecc554076/index.html b/files/de/conflicting/web/javascript/reference/operators_bf514126b51a6e9b7591809ecc554076/index.html new file mode 100644 index 0000000000..5df33bfe62 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/operators_bf514126b51a6e9b7591809ecc554076/index.html @@ -0,0 +1,413 @@ +--- +title: Zuweisungsoperator +slug: Web/JavaScript/Reference/Operators/Zuweisungsoperator +tags: + - JavaScript + - Operator +translation_of: Web/JavaScript/Reference/Operators#Assignment_operators +translation_of_original: Web/JavaScript/Reference/Operators/Assignment_Operators +--- +<div>{{jsSidebar("Operators")}}</div> + +<p>Ein <strong>Zuweisungsoperator</strong> weist dem linken Operanten einen Wert auf Basis des rechten Operanten zu.</p> + +<div>{{EmbedInteractiveExample("pages/js/expressions-assignment.html")}}</div> + + + +<h2 id="Überblick">Überblick</h2> + +<p>Der Basiszuweisungsoperator ist das Gleich (<code>=</code>), welches den Wert des rechten Operanten dem linken Operanten zuweist. So wird bei <code>x = y</code> der Wert von <code>y</code> <code>x</code> zugewiesen. Die anderen Zuweisungsoperatoren sind Kurzformen für Standardoperationen, wie es in den folgenden Definition und Beispielen gezeigt wird.</p> + +<table class="standard-table"> + <tbody> + <tr> + <th>Name</th> + <th>Kurzformoperator</th> + <th>Bedeutung</th> + </tr> + <tr> + <td><a href="#Assignment">Zuweisung</a></td> + <td><code>x = y</code></td> + <td><code>x = y</code></td> + </tr> + <tr> + <td><a href="#Addition_assignment">Additionszuweisung</a></td> + <td><code>x += y</code></td> + <td><code>x = x + y</code></td> + </tr> + <tr> + <td><a href="#Subtraction_assignment">Subtraktionszuweisung</a></td> + <td><code>x -= y</code></td> + <td><code>x = x - y</code></td> + </tr> + <tr> + <td><a href="#Multiplication_assignment">Multiplikationszuweisung</a></td> + <td><code>x *= y</code></td> + <td><code>x = x * y</code></td> + </tr> + <tr> + <td><a href="#Division_assignment">Divisionszuweisung</a></td> + <td><code>x /= y</code></td> + <td><code>x = x / y</code></td> + </tr> + <tr> + <td><a href="#Remainder_assignment">Restzuweisung</a></td> + <td><code>x %= y</code></td> + <td><code>x = x % y</code></td> + </tr> + <tr> + <td><a href="#Exponentiation_assignment">Potenzierungszuweisung</a></td> + <td><code>x **= y</code></td> + <td><code>x = x ** y</code></td> + </tr> + <tr> + <td><a href="#Left_shift_assignment">Links verschiebende Zuweisung</a></td> + <td><code>x <<= y</code></td> + <td><code>x = x << y</code></td> + </tr> + <tr> + <td><a href="#Right_shift_assignment">Rechts verschiebende Zuweisung</a></td> + <td><code>x >>= y</code></td> + <td><code>x = x >> y</code></td> + </tr> + <tr> + <td><a href="#Unsigned_right_shift_assignment">Vorzeichenlose rechts verschiebende Zuweisung</a></td> + <td><code>x >>>= y</code></td> + <td><code>x = x >>> y</code></td> + </tr> + <tr> + <td><a href="#Bitwise_AND_assignment">Bitweise AND Zuweisung</a></td> + <td><code>x &= y</code></td> + <td><code>x = x & y</code></td> + </tr> + <tr> + <td><a href="#Bitwise_XOR_assignment">Bitweise XOR Zuweisung</a></td> + <td><code>x ^= y</code></td> + <td><code>x = x ^ y</code></td> + </tr> + <tr> + <td><a href="#Bitwise_OR_assignment">Bitweise OR Zuweisung</a></td> + <td><code>x |= y</code></td> + <td><code>x = x | y</code></td> + </tr> + </tbody> +</table> + +<h2 id="Zuweisung"><a name="Assignment">Zuweisung</a></h2> + +<p>Einfacher Zuweisungsoperator, welcher den Wert zu einer Variablen zuweist. Der Zuweisungsoperator gibt den zugewiesenen Wert zurück. Eine Verkettung der Zuweisungsoperatoren ist möglich, um einen Wert mehreren Variablen zuzuweisen. Sie in den Beispielen.</p> + +<h4 id="Syntax">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x = y +</pre> + +<h4 id="Beispiele">Beispiele</h4> + +<pre class="brush: js">// Folgende Variablen sind vorausgesetzt +// x = 5 +// y = 10 +// z = 25 + +x = y // x ist 10 +x = y = z // x, y und z sind alle 25 +</pre> + +<h3 id="Additionszuweisung"><a name="Addition_assignment">Additionszuweisung</a></h3> + +<p>Der Additionszuweisungsoperator <strong>addiert</strong> den Wert des rechten Operanten zu einer Variablen und weist das Ergebnis der Variablen zu. Die Typen der Operanten entscheiden über das Verhalten des Additionszuweisungsoperator. Addition oder Konkatination sind möglich. Siehe beim {{jsxref("Operators/Arithmetic_Operators", "Additionsoperator", "#Addition", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_2">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x += y +<strong>Bedeutung:</strong> x = x + y +</pre> + +<h4 id="Beispiele_2">Beispiele</h4> + +<pre class="brush: js">// Die folgenden Variablen werden vorausgesetzt +// foo = 'foo' +// bar = 5 +// baz = true + + +// Number + Number -> Addition +bar += 2 // 7 + +// Boolean + Number -> Addition +baz += 1 // 2 + +// Boolean + Boolean -> Addition +baz += false // 1 + +// Number + String -> Konkationation +bar += 'foo' // "5foo" + +// String + Boolean -> Konkatination +foo += false // "foofalse" + +// String + String -> Konkationation +foo += 'bar' // "foobar" +</pre> + +<h3 id="Subtraktionszuweisung"><a name="Subtraction_assignment">Subtraktionszuweisung</a></h3> + +<p>Der Subtraktionszuweisungsoperator <strong>subtahiert</strong> den Wert des rechten Operanten von einer Variablen und weist das Ergebnis der Variablen zu. Siehe beim {{jsxref("Operators/Arithmetic_Operators", "Subraktionsoperator", "#Subtraction", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_3">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x -= y +<strong>Bedeutung:</strong> x = x - y +</pre> + +<h4 id="Beispiele_3">Beispiele</h4> + +<pre class="brush: js">// Die folgenden Variablen werden vorausgesetzt +// bar = 5 + +bar -= 2 // 3 +bar -= 'foo' // NaN +</pre> + +<h3 id="Multiplikationszuweisung"><a name="Multiplication_assignment">Multiplikationszuweisung</a></h3> + +<p>Der Multiplikationszuweisungsoperator <strong>multipliziert</strong> den Wert des rechten Operanten zu einer Variablen und weist das Ergebnis der Variablen zu. Siehe beim {{jsxref("Operators/Arithmetic_Operators", "Multiplikationsoperator", "#Multiplication", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_4">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x *= y +<strong>Bedeutung:</strong> x = x * y +</pre> + +<h4 id="Beispiele_4">Beispiele</h4> + +<pre class="brush: js">// Die folgenden Variablen werden vorausgesetzt +// bar = 5 + +bar *= 2 // 10 +bar *= 'foo' // NaN +</pre> + +<h3 id="Divisionszuweisung"><a name="Division_assignment">Divisionszuweisung</a></h3> + +<p>Der Divisionszuweisungsoperator <strong>dividiert</strong> eine Variable durch den rechten Operanten zu und weist das Ergebnis der Variablen zu. Siehe beim {{jsxref("Operators/Arithmetic_Operators", "Divisionsoperator", "#Division", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_5">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x /= y +<strong>Bedeutung:</strong> x = x / y +</pre> + +<h4 id="Beispiele_5">Beispiele</h4> + +<pre class="brush: js">// Die folgenden Variablen werden vorausgesetzt +// bar = 5 + +bar /= 2 // 2.5 +bar /= 'foo' // NaN +bar /= 0 // Infinity +</pre> + +<h3 id="Restzuweisung"><a name="Remainder_assignment">Restzuweisung</a></h3> + +<p>Der Restzuweisungsoperator <strong>dividiert</strong> einer Variable durch den rechten Operanten und weist den <strong>Rest</strong> des Ergebnis der Variablen zu. Siehe beim {{jsxref("Operators/Arithmetic_Operators", "Restoperator", "#Remainder", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_6">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x %= y +<strong>Bedeutung:</strong> x = x % y +</pre> + +<h4 id="Beispiele_6">Beispiele</h4> + +<pre class="brush: js">// Die folgenden Variablen werden vorausgesetzt +// bar = 5 + +bar %= 2 // 1 +bar %= 'foo' // NaN +bar %= 0 // NaN +</pre> + +<h3 id="Potenzierungszuweisung"><a id="Exponentiation_assignment" name="Exponentiation_assignment">Potenzierungszuweisung</a></h3> + +<p>Der Potenzierungszuweisungsoperator <strong>potenziert</strong> einer Variable mit den rechten Operanten und weist das Ergebnis der Variablen zu. Siehe beim {{jsxref("Operators/Arithmetic_Operators", "Exponentialoperator", "#Exponentiation", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_7">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x **= y +<strong>Bedeutung:</strong> x = x ** y +</pre> + +<h4 id="Beispiele_7">Beispiele</h4> + +<pre class="brush: js">// Die folgenden Variablen werden vorausgesetzt +// bar = 5 + +bar **= 2 // 25 +bar **= 'foo' // NaN</pre> + +<h3 id="Links_verschiebende_Zuweisung"><a name="Left_shift_assignment">Links verschiebende Zuweisung</a></h3> + +<p>Der links verschiebende Zuweisungsoperator verschiebt um die Anzahl Bits im rechten Operanten in der Variablen und weist das Ergebnis der Variablen zu. Siehe beim {{jsxref("Operators/Bitwise_Operators", "links verschiebenden Operator", "#Left_shift", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_8">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x <<= y +<strong>Bedeutung:</strong> x = x << y +</pre> + +<h4 id="Beispiele_8">Beispiele</h4> + +<pre class="brush: js">var bar = 5; // (00000000000000000000000000000101) +bar <<= 2; // 20 (00000000000000000000000000010100) +</pre> + +<h3 id="Rechts_verschiebende_Zuweisung"><a name="Right_shift_assignment">Rechts verschiebende Zuweisung</a></h3> + +<p>Der rechts verschiebende Zuweisungsoperator verschiebt um die Anzahl Bits im rechten Operanten in der Variablen und weist das Ergebnis der Variablen zu. Siehe beim {{jsxref("Operators/Bitwise_Operators", "rechts verschiebenden Operator", "#Right_shift", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_9">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x >>= y +<strong>Bedeutung:</strong> x = x >> y +</pre> + +<h4 id="Beispiele_9">Beispiele</h4> + +<pre class="brush: js">var bar = 5; // (00000000000000000000000000000101) +bar >>= 2; // 1 (00000000000000000000000000000001) + +var bar -5; // (-00000000000000000000000000000101) +bar >>= 2; // -2 (-00000000000000000000000000000010) +</pre> + +<h3 id="Vorzeichenlose_rechts_verschiebende_Zuweisung"><a name="Unsigned_right_shift_assignment">Vorzeichenlose rechts verschiebende Zuweisung</a></h3> + +<p>Der vorzeichenlose rechts verschiebende Zuweisungsoperator verschiebt um die Anzahl Bits im rechten Operanten in der Variablen und weist das Ergebnis der Variablen zu. Siehe beim {{jsxref("Operators/Bitwise_Operators", "vorzeichenlose rechts verschiebenden Operator", "#Unsigned_right_shift", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_10">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x >>>= y +<strong>Bedeutung:</strong> x = x >>> y +</pre> + +<h4 id="Beispiele_10">Beispiele</h4> + +<pre class="brush: js">var bar = 5; // (00000000000000000000000000000101) +bar >>>= 2; // 1 (00000000000000000000000000000001) + +var bar = -5; // (-00000000000000000000000000000101) +bar >>>= 2; // 1073741822 (00111111111111111111111111111110)</pre> + +<h3 id="Bitweise_UND_Zuweisung"><a name="Bitwise_AND_assignment">Bitweise UND Zuweisung</a></h3> + +<p>Der bitweise UND Zuweisungsoperator nutzt die Bitrepräsentation beider Operanten, führt eine bitweises UND Operation aus und weist das Ergebnis der Variablen zu.<strong> </strong>Siehe beim {{jsxref("Operators/Bitwise_Operators", "bitweisen UND Operator", "#Bitwise_AND", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_11">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x &= y +<strong>Bedeutung:</strong> x = x & y +</pre> + +<h4 id="Beispiele_11">Beispiele</h4> + +<pre class="brush: js">var bar = 5; +// 5: 00000000000000000000000000000101 +// 2: 00000000000000000000000000000010 +bar &= 2; // 0 +</pre> + +<h3 id="Bitweise_XOR_Zuweisung"><a name="Bitwise_XOR_assignment">Bitweise XOR Zuweisung</a></h3> + +<p>Der bitweise XOR Zuweisungsoperator nutzt die Bitrepräsentation beider Operanten, führt eine bitweises XOR Operation aus und weist das Ergebnis der Variablen zu.<strong> </strong>Siehe beim {{jsxref("Operators/Bitwise_Operators", "bitweisen XOR Operator", "#Bitwise_XOR", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_12">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x ^= y +<strong>Bedeutung:</strong> x = x ^ y +</pre> + +<h4 id="Beispiele_12">Beispiele</h4> + +<pre class="brush: js">var bar = 5; +bar ^= 2; // 7 +// 5: 00000000000000000000000000000101 +// 2: 00000000000000000000000000000010 +// ----------------------------------- +// 7: 00000000000000000000000000000111 +</pre> + +<h3 id="Bitweise_ODER_Zuweisung"><a name="Bitwise_OR_assignment">Bitweise ODER Zuweisung</a></h3> + +<p>Der bitweise ODER Zuweisungsoperator nutzt die Bitrepräsentation beider Operanten, führt eine bitweises ODER Operation aus und weist das Ergebnis der Variablen zu.<strong> </strong>Siehe beim {{jsxref("Operators/Bitwise_Operators", "bitweisen ODER Operator", "#Bitwise_OR", 1)}} für mehr Details nach.</p> + +<h4 id="Syntax_13">Syntax</h4> + +<pre class="syntaxbox"><strong>Operator:</strong> x |= y +<strong>Bedeutung:</strong> x = x | y +</pre> + +<h4 id="Beispiele_13">Beispiele</h4> + +<pre class="brush: js">var bar = 5; +bar |= 2; // 7 +// 5: 00000000000000000000000000000101 +// 2: 00000000000000000000000000000010 +// ----------------------------------- +// 7: 00000000000000000000000000000111 +</pre> + +<h2 id="Beispiele_14">Beispiele</h2> + +<h3 id="Linker_Operant_mit_anderem_Zuweisungsoperator">Linker Operant mit anderem Zuweisungsoperator</h3> + +<p>In ungewöhnlichen Situationen kann ein Zuweisungsoperator (z. B. <code>x += y</code>) nicht identisch mit der äquivalenten Zuweisung (hier <code>x = x + y</code>). Wenn der linke Operant einer Zuweisung selbst eine Zuweisung enthält, wird der linke Operant nur einem ausgewertet. Zum Beispiel:</p> + +<pre class="brush: js">a[i++] += 5 // i wird einmal ausgewertet +a[i++] = a[i++] + 5 // i wird zweimal ausgewertet +</pre> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-assignment-operators', 'Assignment operators')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES2015', '#sec-assignment-operators', 'Assignment operators')}}</td> + <td>{{Spec2('ES2015')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-11.13', 'Assignment operators')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES1', '#sec-11.13', 'Assignment operators')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initiale Definition.</td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + + + +<p>{{Compat("javascript.operators.assignment")}}</p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li><a href="/de/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators">Arithmetische Operatoren</a></li> +</ul> diff --git a/files/de/conflicting/web/javascript/reference/statements/switch/index.html b/files/de/conflicting/web/javascript/reference/statements/switch/index.html new file mode 100644 index 0000000000..f8845c9591 --- /dev/null +++ b/files/de/conflicting/web/javascript/reference/statements/switch/index.html @@ -0,0 +1,121 @@ +--- +title: default +slug: Web/JavaScript/Reference/Statements/default +tags: + - JavaScript + - Keyword +translation_of: Web/JavaScript/Reference/Statements/switch +translation_of_original: Web/JavaScript/Reference/Statements/default +--- +<div>{{jsSidebar("Statements")}}</div> + +<p>Das <strong>default Schlüsselwort</strong> kann in JavaScript in zwei Situationen verwendet werden: Innerhalb eines {{jsxref("Statements/switch", "switch")}} Statements, oder mit einem {{jsxref("Statements/export", "export")}} Statement.</p> + +<div>{{EmbedInteractiveExample("pages/js/statement-default.html")}}</div> + + + +<h2 id="Syntax">Syntax</h2> + +<p>Innerhalb eines {{jsxref("Statements/switch", "switch")}} Statements:</p> + +<pre class="syntaxbox">switch (expression) { + case value1: + // Das Statement wird ausgeführt, wenn das Ergebnis der expression mit value1 übereinstimmt + [break;] + default: + // Das Statement wird ausgeführt, wenn keiner Werte mit dem Wert der expression übereinstimmt + [break;] +}</pre> + +<p>Mit dem {{jsxref("Statements/export", "export")}} Statement:</p> + +<pre class="syntaxbox">export default <em>nameN</em> </pre> + +<h2 id="Beschreibung">Beschreibung</h2> + +<p>Für mehr Informationen, siehe die</p> + +<ul> + <li>{{jsxref("Statements/switch", "switch")}} Statement und</li> + <li>{{jsxref("Statements/export", "export")}} Statement Seiten</li> +</ul> + +<h2 id="Beispiele">Beispiele</h2> + +<h3 id="Verwenden_von_default_in_switch_Statements">Verwenden von <code>default</code> in switch Statements</h3> + +<p>Wenn im folgenden Beispiel <code>expr</code> den Wert "Oranges" oder "Apples" hat, wird das Programm die jeweiligen Werte abgleichen und das dazugehörige Statement ausführen. Das <code>default</code> Schlüsselwort hilft, alle übrigen (nicht speziell behandelten) Fälle zu behandeln.</p> + +<pre class="brush: js">switch (expr) { + case 'Oranges': + console.log('Oranges are $0.59 a pound.'); + break; + case 'Apples': + console.log('Apples are $0.32 a pound.'); + break; + default: + console.log('Sorry, we are out of ' + expr + '.'); +}</pre> + +<h3 id="Verwenden_von_default_mit_export">Verwenden von <code>default</code> mit export</h3> + +<p>Wenn Sie einen einzelnen Wert oder einen "fallback" Wert für ein Modul brauchen, können Sie einen default export verwenden:</p> + +<pre class="brush: js">// module "my-module.js" +let cube = function cube(x) { + return x * x * x; +} +export default cube;</pre> + +<p>Dann kann der default export in einem anderen Skript direkt importiert werden:</p> + +<pre class="brush: js">// module "my-module.js" +import myFunction from 'my-module'; +console.log(cube(3)); // 27 +</pre> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikation</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-switch-statement', 'switch statement')}}</td> + <td>{{Spec2('ES6')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-exports', 'Exports')}}</td> + <td>{{Spec2('ES6')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-switch-statement', 'switch statement')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-exports', 'Exports')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + + + +<p>{{Compat("javascript.statements.default")}}</p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{jsxref("Statements/export", "export")}}</li> + <li>{{jsxref("Statements/switch", "switch")}}</li> +</ul> |