aboutsummaryrefslogtreecommitdiff
path: root/files/de/web/javascript
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 21:46:22 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 21:46:22 -0500
commita065e04d529da1d847b5062a12c46d916408bf32 (patch)
treefe0f8bcec1ff39a3c499a2708222dcf15224ff70 /files/de/web/javascript
parent218934fa2ed1c702a6d3923d2aa2cc6b43c48684 (diff)
downloadtranslated-content-a065e04d529da1d847b5062a12c46d916408bf32.tar.gz
translated-content-a065e04d529da1d847b5062a12c46d916408bf32.tar.bz2
translated-content-a065e04d529da1d847b5062a12c46d916408bf32.zip
update based on https://github.com/mdn/yari/issues/2028
Diffstat (limited to 'files/de/web/javascript')
-rw-r--r--files/de/web/javascript/reference/global_objects/array/observe/index.html91
-rw-r--r--files/de/web/javascript/reference/global_objects/array/unobserve/index.html88
-rw-r--r--files/de/web/javascript/reference/global_objects/arraybuffer/transfer/index.html84
-rw-r--r--files/de/web/javascript/reference/global_objects/date/tolocaleformat/index.html81
-rw-r--r--files/de/web/javascript/reference/global_objects/function/arity/index.html32
-rw-r--r--files/de/web/javascript/reference/global_objects/function/isgenerator/index.html56
-rw-r--r--files/de/web/javascript/reference/global_objects/number/tointeger/index.html52
-rw-r--r--files/de/web/javascript/reference/global_objects/object/observe/index.html199
-rw-r--r--files/de/web/javascript/reference/operators/array_comprehensions/index.html200
-rw-r--r--files/de/web/javascript/reference/operators/expression_closures/index.html76
-rw-r--r--files/de/web/javascript/reference/operators/generator_comprehensions/index.html172
-rw-r--r--files/de/web/javascript/reference/statements/for_each...in/index.html122
12 files changed, 0 insertions, 1253 deletions
diff --git a/files/de/web/javascript/reference/global_objects/array/observe/index.html b/files/de/web/javascript/reference/global_objects/array/observe/index.html
deleted file mode 100644
index 2926d777fc..0000000000
--- a/files/de/web/javascript/reference/global_objects/array/observe/index.html
+++ /dev/null
@@ -1,91 +0,0 @@
----
-title: Array.observe()
-slug: Web/JavaScript/Reference/Global_Objects/Array/observe
-tags:
- - Array
- - JavaScript
- - Method
- - Obsolete
-translation_of: Archive/Web/JavaScript/Array.observe
----
-<div>{{JSRef}} {{obsolete_header}}</div>
-
-<p>Die <strong><code>Array.observe()</code></strong> Methode wurde für das asynchrone Beobachten von Veränderungen von Arrays benutzt, ähnlich wie {{jsxref("Object.observe()")}} für Objekte. Sie stellt einen Stream von Änderungen in der Reihenfolge, in denen sie auftreten, zur Verfügung.<br>
- Equivalent zu  <code>Object.observe()</code> und wird ausgeführt mit der Liste <code>["add", "update", "delete", "splice"]</code>. Diese Funktion wurde als deprecated markiert und bereits aus einigen Browsern entfernt. Man kann stattdessen das allgemeinere {{jsxref("Proxy")}} Objekt verwenden.</p>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox"><code>Array.observe(<var>arr</var>, <var>callback</var>)</code></pre>
-
-<h3 id="Parameter">Parameter</h3>
-
-<dl>
- <dt><code>arr</code></dt>
- <dd>    Das Array, welches beobachtet wird.</dd>
- <dt><code>callback</code></dt>
- <dd>Die Funktion, welche bei jeder Änderung mit folgenden Argumenten aufgerufen wird:
- <dl>
- <dt><code>changes</code></dt>
- <dd>Ein Array aus Objekten. Jedes repräsentiert eine Änderung. Die Eigenschaften dieser change Objekte sind:
- <ul>
- <li><strong><code>name</code></strong>: Der Name der Eigenschaft, welche geändert wurde.</li>
- <li><strong><code>object</code></strong>: Das veränderte Array, nachdem die Änderung stattfand.</li>
- <li><strong><code>type</code></strong>: Ein String, welcher den Typ der Änderung darstellt. Er hat den Wert "add", "update", "delete", oder "splice".</li>
- <li><strong><code>oldValue</code></strong>: Nur für "update" und "delete" Typ. Der Wert vor der Änderung.</li>
- <li><strong><code>index</code></strong>: Nur für "splice" Typ. Der Index, an welchem die Änderung stattfand.</li>
- <li><strong><code>removed</code></strong>: Nur für "splice" Typ. Ein Array aus den gelöschten Elementen.</li>
- <li><strong><code>addedCount</code></strong>: Nur für "splice" Typ. Die Anzahl an Elementen, welche hinzugefügt wurden.</li>
- </ul>
- </dd>
- </dl>
- </dd>
-</dl>
-
-<h2 id="Beschreibung">Beschreibung</h2>
-
-<p>Die <code>callback</code> Funktion wird jedes mal aufgerufen, wenn eine Änderung in arr stattfindet mit einem Array von allen Änderungen in der Reihenfolge in der sie auftreten</p>
-
-<div class="note">
-<p>Änderungen über die Array Methoden, wie zum Beispiel <a href="/de/docs/Web/JavaScript/Reference/Global_Objects/Array/pop"><code>Array.prototype.pop()</code></a>, werden als "splice" "changes" dargestellt.<br>
- Index Änderungen, welche die Länge des Arrays nicht verändern, werden als "update" "changes" dargestellt.</p>
-</div>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<h3 id="Aufzeichnung_verschiedener_change_Typen">Aufzeichnung verschiedener change Typen</h3>
-
-<pre class="brush: js">var arr = ['a', 'b', 'c'];
-
-Array.observe(arr, function(changes) {
- console.log(changes);
-});
-
-arr[1] = 'B';
-// [{type: 'update', object: &lt;arr&gt;, name: '1', oldValue: 'b'}]
-
-arr[3] = 'd';
-// [{type: 'splice', object: &lt;arr&gt;, index: 3, removed: [], addedCount: 1}]
-
-arr.splice(1, 2, 'beta', 'gamma', 'delta');
-// [{type: 'splice', object: &lt;arr&gt;, index: 1, removed: ['B', 'c', 'd'], addedCount: 3}]
-</pre>
-
-<h2 id="Spezifikationen">Spezifikationen</h2>
-
-<p><a href="https://github.com/arv/ecmascript-object-observe">Strawman proposal specification</a>.</p>
-
-<h2 id="Browserkompatibilität">Browserkompatibilität</h2>
-
-<div>
-
-
-<p>{{Compat("javascript.builtins.Array.observe")}}</p>
-</div>
-
-<h2 id="See_also">See also</h2>
-
-<ul>
- <li><a href="//stackoverflow.com/q/29269057/778272">Under what condition would Array.observe's “add” event trigger?</a></li>
- <li>{{jsxref("Array.unobserve()")}} {{experimental_inline}}</li>
- <li>{{jsxref("Object.observe()")}} {{experimental_inline}}</li>
-</ul>
diff --git a/files/de/web/javascript/reference/global_objects/array/unobserve/index.html b/files/de/web/javascript/reference/global_objects/array/unobserve/index.html
deleted file mode 100644
index fd31177c3a..0000000000
--- a/files/de/web/javascript/reference/global_objects/array/unobserve/index.html
+++ /dev/null
@@ -1,88 +0,0 @@
----
-title: Array.unobserve()
-slug: Web/JavaScript/Reference/Global_Objects/Array/unobserve
-tags:
- - Array
- - JavaScript
- - Method
- - Obsolete
-translation_of: Archive/Web/JavaScript/Array.unobserve
----
-<div>{{JSRef}} {{obsolete_header}}</div>
-
-<p>Die Array<strong>.unobserve()</strong> Methode wird eingesetzt um Observers die mit {{jsxref("Array.observe()")}} eingestellt wurden zu entfernen, jedoch ist dieses veraltet und wurde schon von Browsern entfernt. Man kann einen allgemeineres {{jsxref("Proxy")}} Objekt benutzen.</p>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox">Array.unobserve(<var>arr</var>, <var>callback</var>)</pre>
-
-<h3 id="Parameter">Parameter</h3>
-
-<dl>
- <dt><code>arr</code></dt>
- <dd>Das Array, welches nicht mehr Überwacht werden soll.</dd>
- <dt><code>callback</code></dt>
- <dd>Die Referenz zu dem Observer, die mit der Überwachung von Änderungen auf dem Array <strong>arr</strong> aufhören soll.</dd>
-</dl>
-
-<h2 id="Beschreibung">Beschreibung</h2>
-
-<p><code>Array.unobserve()</code> sollt nach {{jsxref("Array.observe()")}} aufgerufen werden, um einen Observer von einem Array zu entfernen.</p>
-
-<p><strong>callback</strong> sollte eine Referenz auf eine Funktion sein und nicht einen anonyme Funktion sein, weil diese Referenz genutzt wird um den Observer zu entfernen. Es ist nicht zulässig <strong>Array.unobserve()</strong> mit einer anonymen Funktion aufzurufen, weil dadurch kein Observer entfernt wird.</p>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<h3 id="Observer_von_Array_entfernen">Observer von Array entfernen</h3>
-
-<pre class="brush: js">var arr = [1, 2, 3];
-
-var observer = function(changes) {
-  console.log(changes);
-}
-
-Array.observe(arr, observer);
-​
-arr.push(4);
-// [{type: "splice", object: &lt;arr&gt;, index: 3, removed:[], addedCount: 1}]
-
-Array.unobserve(arr, observer);
-
-arr.pop();
-// The callback wasn't called</pre>
-
-<h3 id="Einsatz_einer_anonymen_Funktion">Einsatz einer anonymen Funktion</h3>
-
-<pre class="brush: js">var persons = ['Khalid', 'Ahmed', 'Mohammed'];
-
-Array.observe(persons, function (changes) {
-  console.log(changes);
-});
-
-persons.shift();
-// [{type: "splice", object: &lt;arr&gt;, index: 0, removed: [ "Khalid" ], addedCount: 0 }]
-
-Array.unobserve(persons, function (changes) {
-  console.log(changes);
-});
-
-persons.push('Abdullah');
-// [{type: "splice", object: &lt;arr&gt;, index: 2, removed: [], addedCount: 1 }]
-// The callback will always be called
-</pre>
-
-<h2 id="Browserkompatibilität">Browserkompatibilität</h2>
-
-<div>
-
-
-<p>{{Compat("javascript.builtins.Array.unobserve")}}</p>
-</div>
-
-<h2 id="Siehe_auch">Siehe auch</h2>
-
-<ul>
- <li>{{jsxref("Array.observe()")}} {{obsolete_inline}}</li>
- <li>{{jsxref("Object.observe()")}} {{obsolete_inline}}</li>
- <li>{{jsxref("Object.unobserve()")}} {{obsolete_inline}}</li>
-</ul>
diff --git a/files/de/web/javascript/reference/global_objects/arraybuffer/transfer/index.html b/files/de/web/javascript/reference/global_objects/arraybuffer/transfer/index.html
deleted file mode 100644
index 3004da98bf..0000000000
--- a/files/de/web/javascript/reference/global_objects/arraybuffer/transfer/index.html
+++ /dev/null
@@ -1,84 +0,0 @@
----
-title: ArrayBuffer.transfer()
-slug: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/transfer
-tags:
- - ArrayBuffer
- - Experimental
- - JavaScript
- - Method
- - Reference
- - TypedArrays
-translation_of: Archive/Web/JavaScript/ArrayBuffer.transfer
----
-<div>{{JSRef}} {{SeeCompatTable}}</div>
-
-<p>Die statische <code><strong>ArrayBuffer.transfer()</strong></code> Funktion gibt einen neuen <code>ArrayBuffer</code> mit dem Inhalt von <code>oldBuffer</code>. Je nachdem, wei die <code>newByteLength</code> gesetzt ist, werden die Daten abgeschnitten oder erweitert. Wenn <code>newByteLength</code> nicht gesetzt ist, wird die <code>byteLength</code> von <code>oldBuffer</code> benutzt. Diese Operation bringt <code>oldBuffer</code> in einen detached Status.</p>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox">ArrayBuffer.transfer(oldBuffer [, newByteLength]);</pre>
-
-<h3 id="Parameter">Parameter</h3>
-
-<dl>
- <dt><code>oldBuffer</code></dt>
- <dd>Ein {{jsxref("ArrayBuffer")}} Objekt von dem die Daten transferiert werden.</dd>
- <dt>newByteLength</dt>
- <dd>Die Bytelänge des neuen <code>ArrayBuffer</code> Objektes.</dd>
-</dl>
-
-<h3 id="Rückgabewert">Rückgabewert</h3>
-
-<p>Ein neues <code>ArrayBuffer</code> Objekt.</p>
-
-<h2 id="Beschreibung">Beschreibung</h2>
-
-<p>Die <code>ArrayBuffer.transfer()</code> Methode erlaubt es ein <code>ArrayBuffer</code> zu vergrößern und zu detachen. Die Möglichkeit ein <code>ArrayBuffer</code> zu vergrößern ohne es zu kopieren, hat den Vorteil, dass es viel schneller für große Buffer ist (ähnlich wie bei realloc). Die Möglichkeit, dass ein <code>ArrayBuffer</code> detachet wird, gibt dem Entwickler die explizite Kontrolle über das freigeben des internen Speichers. Dieses vermeidet das Entfernen aller Referenzen und das Warten auf die Garbage Collection.</p>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<pre class="brush: js">var buf1 = new ArrayBuffer(40);
-new Int32Array(buf1)[0] = 42;
-
-var buf2 = ArrayBuffer.transfer(buf1, 80);
-buf1.byteLength; // 0 but if you use the polyfill then the value is still 40
-buf2.byteLength; // 80
-new Int32Array(buf2)[0]; // 42
-
-var buf3 = ArrayBuffer.transfer(buf2, 0);
-buf2.byteLength; // 0 but if you use the polyfill then the value is still 80
-buf3.byteLength; // 0
-</pre>
-
-<h2 id="Polyfill">Polyfill</h2>
-
-<p>Für Browser, die die Funktion nicht nativ unterstützen, gibt es die Möglichkeit folgenden Quelltext am Anfang eines Skriptes einzufügen, um die Funktion <code>transfer()</code> zu benutzen. Diese Funktion ist nicht exakt die in der API beschriebene, weil Browser, die die Funktion unterstützen, direkten Zugriff auf die C++ Funktion <code>realloc()</code> haben, welche die Länge des Speichers erhöht und nur eine Kopie anlegt, wenn es nötig ist. Im Gegensatz dazu kopiert der folgende Pollyfill alles immer in neuen Speicher. Diese Funktion transferiert die Daten jedoch von einem <code>ArrayBuffer</code> zu einem anderen.</p>
-
-<pre class="brush: js">if (!ArrayBuffer.transfer) {
- ArrayBuffer.transfer = function(source, length) {
-  if (!(source instanceof ArrayBuffer))
-  throw new TypeError('Source must be an instance of ArrayBuffer');
- if (length &lt;= source.byteLength)
- return source.slice(0, length);
- var sourceView = new Uint8Array(source),
-  destView = new Uint8Array(new ArrayBuffer(length));
-  destView.set(sourceView);
- return dest.buffer;
- };
-}</pre>
-
-<h2 id="Spezifikationen">Spezifikationen</h2>
-
-<p>Ist in keiner aktuellen Spezifikation enthalten, wird aber <a href="https://esdiscuss.org/topic/sept-23-2014-meeting-notes">in der Zukunft für ECMA-262 geplant</a>.</p>
-
-<h2 id="Browserkompatibilität"><a id="Browser_compatibility" name="Browser_compatibility">Browserkompatibilität</a></h2>
-
-
-
-<p>{{Compat("javascript.builtins.ArrayBuffer.transfer")}}</p>
-
-<h2 id="Siehe_auch">Siehe auch</h2>
-
-<ul>
- <li><a href="/de/docs/Web/JavaScript/Typed_arrays" title="en/JavaScript typed arrays">JavaScript getypte Arrays</a></li>
-</ul>
diff --git a/files/de/web/javascript/reference/global_objects/date/tolocaleformat/index.html b/files/de/web/javascript/reference/global_objects/date/tolocaleformat/index.html
deleted file mode 100644
index f8f596983f..0000000000
--- a/files/de/web/javascript/reference/global_objects/date/tolocaleformat/index.html
+++ /dev/null
@@ -1,81 +0,0 @@
----
-title: Date.prototype.toLocaleFormat()
-slug: Web/JavaScript/Reference/Global_Objects/Date/toLocaleFormat
-tags:
- - Date
- - Java
- - Method
- - Non-standard
- - Prototype
- - Reference
-translation_of: Archive/Web/JavaScript/Date.toLocaleFormat
----
-<div>{{JSRef}} {{non-standard_header}}</div>
-
-<p>Die nicht standardisierte Methode <strong><code>toLocaleFormat()</code></strong> konvertiert einen {{jsxref("date")}} Objekt zu einem String im übergebenen Format. {{jsxref("Global_Objects/DateTimeFormat", "Intl.DateTimeFormat")}} ist einen standardisierte Alternative zum Formatieren von {{jsxref("Date")}} Objekten. Siehe auch die neuere Version der {{jsxref("Date.prototype.toLocaleDateString()")}} Methode an.</p>
-
-<div><strong>Diese Funktion wurde Entfernt und wird ab Firefox 58 nicht mehr Funktionieren.</strong> Für mehr Information un Migrationshilfe siehe in den Artikel {{jsxref("Errors/Deprecated_toLocaleFormat","Warning: Date.prototype.toLocaleFormat is deprecated")}}.</div>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox"><var>dateObj</var>.toLocaleFormat(<var>formatString</var>)</pre>
-
-<h3 id="Parameter">Parameter</h3>
-
-<dl>
- <dt><code>formatString</code></dt>
- <dd>Ein Formatstring, welche im selben Format sein muss, wie es die C Funktion <a class="external" href="http://www.opengroup.org/onlinepubs/007908799/xsh/strftime.html"><code>strftime()</code></a> erwartet.</dd>
-</dl>
-
-<h3 id="Rückgabewert">Rückgabewert</h3>
-
-<p>Einen String, der das gegebenen {{jsxref("Date")}} Objekt im spezifizierten Format repräsentiert.</p>
-
-<h2 id="Beschreibung">Beschreibung</h2>
-
-<p>Die <code>toLocaleFormat()</code> Methode ermöglicht es eine größere Kontrolle über das Formatieren von generierten Daten und/oder Zeiten zu haben. Namen für Monate und Wochentage werden mit den Spracheinstellungen des Betriebssystem formatiert. Die Anordnung von Tagen, Monaten und anderen Bestandteilen in der Formatierung wird nicht automatisch vorgenommen. Sie sind von den Angaben in dem Formatierungsstring abhängig. Man muss dafür sorgen, dass der Formatierungsstring zu richtigen Ergebnissen auf dem Benutzersystem führt. Man sollte vorsichtig sein, weil die Spracheinstellungen im Browser nicht die gleichen sein müssen, wie die des Betriebssystems.</p>
-
-<p>Extension und XULRunner Entwickler wissen, dass das Laden von Formatstring aus <code>.dtd</code> oder <code>.properties</code> Dateien mit dem Einsatz von URIs (z. B. <code>chrome://<em>somedomain</em>/locale/<em>somefile.ext</em></code>) <strong>vermieden werden sollte</strong>, weil <code>.dtd</code>/<code>.properties</code> Dateien und die <code>toLocaleFormat()</code> Methode nicht notwendiger Weise der gleichen Sprache folgen. Dieses kann zu nicht lesbaren oder merkwürdig formatierten Daten führen.</p>
-
-<p>Außerdem ist zu beachten, dass der Einsatz von Formatierungen abhängig von der Plattform und den benutzerdefinierten Einstellungen des Benutzers nicht immer gewollt ist. Man sollte stattdessen die allgemeineren <code>toLocale*</code> Methoden des {{jsxref("Global_Objects/Date", "Date")}} Objektes nutzen oder ein eigenes Format mit den <code>get*</code> Methoden einer {{jsxref("Global_Objects/Date", "Date")}} Instanz erstellen.</p>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<h3 id="Einsatz_von_toLocaleFormat()">Einsatz von <code>toLocaleFormat()</code></h3>
-
-<pre class="brush: js example-bad">var today = new Date();
-var date = today.toLocaleFormat('%A, %B %e, %Y'); // Schlechtes Beispiel
-</pre>
-
-<p>Im Beispiel gibt <code>toLocaleFormat()</code> einen String wie "Mittwoch, Oktober 3, 2007" zurück. Zu beachten ist, dass der String nicht unbedingt den Sprachegegebenheiten angepasst ist, was auf die oben genannten Probleme zurückzuführen ist.</p>
-
-<h2 id="Polyfill">Polyfill</h2>
-
-<p>Wenn die <a href="https://github.com/abritinthebay/datejs/wiki/Format-Specifiers">DateJS</a> Bibliothek benutzt wird, kann folgender Polyfill benutzt werden:</p>
-
-<pre class="brush: js">if (!Date.prototype.toLocaleFormat) {
- (function() {
- Date.prototype.toLocaleFormat = function(formatString) {
- return this.format(formatString);
- };
- }());
-}</pre>
-
-<h2 id="Spezifikationen">Spezifikationen</h2>
-
-<p>Nicht spezifiziert. Implementiert in JavaScript 1.6.</p>
-
-<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.toLocaleFormat")}}</p>
-
-<h2 id="Siehe_auch">Siehe auch</h2>
-
-<ul>
- <li>{{jsxref("Global_Objects/DateTimeFormat", "Intl.DateTimeFormat")}}</li>
- <li>{{jsxref("Date.prototype.toLocaleString()")}}</li>
- <li>{{jsxref("Date.prototype.toLocaleDateString()")}}</li>
- <li>{{jsxref("Date.prototype.toLocaleTimeString()")}}</li>
-</ul>
diff --git a/files/de/web/javascript/reference/global_objects/function/arity/index.html b/files/de/web/javascript/reference/global_objects/function/arity/index.html
deleted file mode 100644
index f5ff00bd27..0000000000
--- a/files/de/web/javascript/reference/global_objects/function/arity/index.html
+++ /dev/null
@@ -1,32 +0,0 @@
----
-title: Function.arity
-slug: Web/JavaScript/Reference/Global_Objects/Function/arity
-tags:
- - Function
- - JavaScript
- - Obsolete
- - Property
- - Unimplemented
-translation_of: Archive/Web/JavaScript/Function.arity
----
-<div>{{JSRef}} {{obsolete_header}}</div>
-
-<p class="note">Die <code><strong>arity</strong></code> Eigenschaft wurde benutzt, um die Anzahl der erwarteten Argumente einer Funktion zurückzugeben, jedoch existiert diese Eigenschaft nicht mehr und wurde durch die Eigenschaft {{jsxref("Function.prototype.length")}} ersetzt.</p>
-
-<h2 id="Spezifikationen">Spezifikationen</h2>
-
-<p>Implementiert in JavaScript 1.2. Veraltet seit JavaScript 1.4.</p>
-
-<h2 id="Browserkompatibilität">Browserkompatibilität</h2>
-
-<div>
-
-
-<p>{{Compat("javascript.builtins.Function.arity")}}</p>
-</div>
-
-<h2 id="Siehe_auch">Siehe auch</h2>
-
-<ul>
- <li>{{jsxref("Function.prototype.length")}}</li>
-</ul>
diff --git a/files/de/web/javascript/reference/global_objects/function/isgenerator/index.html b/files/de/web/javascript/reference/global_objects/function/isgenerator/index.html
deleted file mode 100644
index 5897905e92..0000000000
--- a/files/de/web/javascript/reference/global_objects/function/isgenerator/index.html
+++ /dev/null
@@ -1,56 +0,0 @@
----
-title: Function.prototype.isGenerator()
-slug: Web/JavaScript/Reference/Global_Objects/Function/isGenerator
-tags:
- - Function
- - JavaScript
- - Method
- - Non-standard
- - Obsolete
-translation_of: Archive/Web/JavaScript/Function.isGenerator
----
-<div>{{JSRef}} {{non-standard_header}}</div>
-
-<p>Die nicht standardisierte <code><strong>isGenerator()</strong></code> Methode wird benutzt, um festzustellen, ob eine Funktion ein <a href="/de/docs/Web/JavaScript/Guide/Iterators_and_Generators#Generators.3A_a_better_way_to_build_Iterators">Generator</a> ist. In Firefox Version 58 wurde diese Methode entfernt.</p>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox"><code><var>fun</var>.isGenerator()</code></pre>
-
-<h3 id="Rückgabewert">Rückgabewert</h3>
-
-<p>Ein {{jsxref("Boolean")}} Welcher angibt, ob eine Funktion ein <a href="/de/docs/Web/JavaScript/Guide/Iterators_and_Generators#Generators.3A_a_better_way_to_build_Iterators">Generator</a> ist.</p>
-
-<h2 id="Beschreibung">Beschreibung</h2>
-
-<p>Die <code>isGenerator()</code> Methode stellt fest, ob eine Funktion <em><code>fun</code></em> ein <a href="/de/docs/Web/JavaScript/Guide/Iterators_and_Generators#Generators.3A_a_better_way_to_build_Iterators">Generator</a> ist. Diese war in einem frühen Vorschlag, wurde jedoch nicht in der ECMAScript 2015 Spezifikation eingefügt.</p>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<pre class="brush: js">function f() {}
-
-function* g() {
- yield 42;
-}
-
-console.log('f.isGenerator() = ' + f.isGenerator()); // f.isGenerator() = false
-console.log('g.isGenerator() = ' + g.isGenerator()); // g.isGenerator() = true
-</pre>
-
-<h2 id="Spezifikationen">Spezifikationen</h2>
-
-<p>Ist in keiner Spezifikation vorhanden. Implementiert in JavaScript 1.8.6.</p>
-
-<h2 id="Browserkompatibilität">Browserkompatibilität</h2>
-
-<div>
-
-
-<p>{{Compat("javascript.builtins.Function.isGenerator")}}</p>
-</div>
-
-<h2 id="Siehe_auch">Siehe auch</h2>
-
-<ul>
- <li><a href="/de/docs/Web/JavaScript/Guide/Iterators_and_Generators">Iteratoren und Generatoren</a></li>
-</ul>
diff --git a/files/de/web/javascript/reference/global_objects/number/tointeger/index.html b/files/de/web/javascript/reference/global_objects/number/tointeger/index.html
deleted file mode 100644
index 79545e9ad6..0000000000
--- a/files/de/web/javascript/reference/global_objects/number/tointeger/index.html
+++ /dev/null
@@ -1,52 +0,0 @@
----
-title: Number.toInteger()
-slug: Web/JavaScript/Reference/Global_Objects/Number/toInteger
-tags:
- - JavaScript
- - Method
- - Number
- - Obsolete
-translation_of: Archive/Web/JavaScript/Number.toInteger
----
-<div>{{JSRef}} {{obsolete_header}}</div>
-
-<p>Die <strong><code>Number.toInteger()</code></strong> Methode wurde eingesetzt, um den übegebenen Wert zu analysieren und zu einer ganzen Zahl zu konvertieren, jedoch wurde die Implementierung entfernt.</p>
-
-<p>Wenn der übergebene Wert {{jsxref("NaN")}}, {{jsxref("null")}} oder {{jsxref("undefined")}} ist, gibt die Methode <code>0</code> zurück. Wenn der Wert <code>false</code> ist, wird <code>0</code> und bei <code>true</code> wird <code>1</code> zurückgegeben.</p>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox">Number.toInteger(<var>zahl</var>)</pre>
-
-<h3 id="Parameter">Parameter</h3>
-
-<dl>
- <dt><code>zahl</code></dt>
- <dd>Wert der zu einer ganzen Zahl konvertiert werden soll.</dd>
-</dl>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<h3 id="Einsatz_von_toInteger">Einsatz von <code>toInteger</code></h3>
-
-<pre class="brush: js">Number.toInteger(0.1); // 0
-Number.toInteger(1); // 1
-Number.toInteger(Math.PI); // 3
-Number.toInteger(null); // 0
-</pre>
-
-<h2 id="Spezifikationen">Spezifikationen</h2>
-
-<p><code>Number.toInteger()</code> war Teil der des ECMAScript 6 Entwurfesspezifikation, jedoch wurde sie am 23. August 2013 im Draft Rev 17 entfernt.</p>
-
-<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.toInteger")}}</p>
-
-<h2 id="See_also">See also</h2>
-
-<ul>
- <li>{{jsxref("Number")}}</li>
-</ul>
diff --git a/files/de/web/javascript/reference/global_objects/object/observe/index.html b/files/de/web/javascript/reference/global_objects/object/observe/index.html
deleted file mode 100644
index df68348028..0000000000
--- a/files/de/web/javascript/reference/global_objects/object/observe/index.html
+++ /dev/null
@@ -1,199 +0,0 @@
----
-title: Object.observe()
-slug: Web/JavaScript/Reference/Global_Objects/Object/observe
-tags:
- - Beobachter
- - Data-Binding
- - Deprecated
- - JavaScript
- - Méthode
- - Object
- - Veraltet
-translation_of: Archive/Web/JavaScript/Object.observe
----
-<div>{{JSRef}} {{obsolete_header}}</div>
-
-<p>Die <strong><code>Object.observe()</code></strong> Methode kann genutzt werden, um auf Änderungen an einem Objekt asynchron zu reagieren. Sie bietet einen Stream der Änderungen in der Reihenfolge ihres Auftretens. Da die Methode veraltet ist und Beschränkungen aufweist, sollte lieber ein {{jsxref("Proxy")}} Objekt verwendet werden.</p>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox"><code>Object.observe(<var>obj</var>, <var>callback</var>[, <var>acceptList</var>])</code></pre>
-
-<h3 id="Parameter">Parameter</h3>
-
-<dl>
- <dt><code>obj</code></dt>
- <dd>Das Objekt, das beobachtet werden soll.</dd>
- <dt><code>callback</code></dt>
- <dd>Eine Callback-Funktion, die jedes mal aufgerufen wird, wenn eine Änderung am Objekt vorgenommen wird
- <dl>
- <dt><code>changes</code></dt>
- <dd>Ein Array von Objekten, die die vorgenommenen Änderungen repräsentieren. Die Eigenschaften der Objekte sind jeweils
- <ul>
- <li><strong><code>name</code></strong>: Der Name der Eigenschaft, welche geändert wurde</li>
- <li><strong><code>object</code></strong>: Das (bereits) geänderte Objekt.</li>
- <li><strong><code>type</code></strong>: Ein String der Angibt, welcher Art die vorgenommene Änderung war. Entspricht <code>"add"</code>, <code>"update"</code>, oder <code>"delete"</code>.</li>
- <li><strong><code>oldValue</code></strong>: Existiert nur, wenn der type <code>"update"</code> oder <code>"delete"</code> ist. Der ursprüngliche Wert vor der Änderung.</li>
- </ul>
- </dd>
- </dl>
- </dd>
- <dt><code>acceptList</code></dt>
- <dd>Eine Liste von Änderungstypen die für das gegebene Objekt und jeweilige Callback beobachtet werden sollen. Standardmäßig <code>["add", "update", "delete", "reconfigure", "setPrototype", "preventExtensions"]</code> .</dd>
-</dl>
-
-<h2 id="Beschreibung">Beschreibung</h2>
-
-<p><code>callback</code> wird jedes mal aufgerufen, wenn das <code>obj</code> geändert wird. Die Funktion erhält dabei die Liste aller Änderungen in chronologischer Reihenfolge ihres Auftretens.</p>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<h3 id="Ausgabe_aller_sechs_Änderungsarten">Ausgabe aller sechs Änderungsarten</h3>
-
-<pre class="brush: js">var obj = {
- foo: 0,
- bar: 1
-};
-
-Object.observe(obj, function(changes) {
- console.log(changes);
-});
-
-obj.baz = 2;
-// [{name: 'baz', object: &lt;obj&gt;, type: 'add'}]
-
-obj.foo = 'hello';
-// [{name: 'foo', object: &lt;obj&gt;, type: 'update', oldValue: 0}]
-
-delete obj.baz;
-// [{name: 'baz', object: &lt;obj&gt;, type: 'delete', oldValue: 2}]
-
-Object.defineProperty(obj, 'foo', {writable: false});
-// [{name: 'foo', object: &lt;obj&gt;, type: 'reconfigure'}]
-
-Object.setPrototypeOf(obj, {});
-// [{name: '__proto__', object: &lt;obj&gt;, type: 'setPrototype', oldValue: &lt;prototype&gt;}]
-
-Object.seal(obj);
-// [
-// {name: 'foo', object: &lt;obj&gt;, type: 'reconfigure'},
-// {name: 'bar', object: &lt;obj&gt;, type: 'reconfigure'},
-// {object: &lt;obj&gt;, type: 'preventExtensions'}
-// ]
-</pre>
-
-<h3 id="Data_Binding">Data Binding</h3>
-
-<pre class="brush: js">// A user model
-var user = {
- id: 0,
- name: 'Brendan Eich',
- title: 'Mr.'
-};
-
-// Create a greeting for the user
-function updateGreeting() {
- user.greeting = 'Hello, ' + user.title + ' ' + user.name + '!';
-}
-updateGreeting();
-
-Object.observe(user, function(changes) {
- changes.forEach(function(change) {
- // Any time name or title change, update the greeting
- if (change.name === 'name' || change.name === 'title') {
- updateGreeting();
- }
- });
-});
-</pre>
-
-<h3 id="Eigens_definierter_Änderungstyp">Eigens definierter Änderungstyp</h3>
-
-<pre class="brush: js">// A point on a 2D plane
-var point = {x: 0, y: 0, distance: 0};
-
-function setPosition(pt, x, y) {
- // Performing a custom change
- Object.getNotifier(pt).performChange('reposition', function() {
- var oldDistance = pt.distance;
- pt.x = x;
- pt.y = y;
- pt.distance = Math.sqrt(x * x + y * y);
- return {oldDistance: oldDistance};
- });
-}
-
-Object.observe(point, function(changes) {
- console.log('Distance change: ' + (point.distance - changes[0].oldDistance));
-}, ['reposition']);
-
-setPosition(point, 3, 4);
-// Distance change: 5
-</pre>
-
-<h2 id="Spezifikationen">Spezifikationen</h2>
-
-<p><a href="https://github.com/arv/ecmascript-object-observe">Strawman proposal for ECMAScript 7</a>.</p>
-
-<h2 id="Browserunterstützung">Browserunterstützung</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>{{CompatChrome("36")}}</td>
- <td>{{CompatNo}} [1]</td>
- <td>{{CompatNo}} [2]</td>
- <td>{{CompatOpera("23")}}</td>
- <td>{{CompatNo}}</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>{{CompatNo}}</td>
- <td>{{CompatChrome("36")}}</td>
- <td>{{CompatNo}} [1]</td>
- <td>{{CompatNo}} [2]</td>
- <td>{{CompatOpera("23")}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<p>[1]: See {{bug(800355)}}</p>
-
-<p>[2]: See relevant <a href="https://dev.modern.ie/platform/status/objectobserve/">MS Edge platform status entry</a></p>
-
-<h2 id="Siehe_Auch">Siehe Auch</h2>
-
-<ul>
- <li>{{jsxref("Object.unobserve()")}} {{experimental_inline}}</li>
- <li>{{jsxref("Array.observe()")}} {{experimental_inline}}</li>
-</ul>
diff --git a/files/de/web/javascript/reference/operators/array_comprehensions/index.html b/files/de/web/javascript/reference/operators/array_comprehensions/index.html
deleted file mode 100644
index a7d34cc1ea..0000000000
--- a/files/de/web/javascript/reference/operators/array_comprehensions/index.html
+++ /dev/null
@@ -1,200 +0,0 @@
----
-title: Array Comprehensions
-slug: Web/JavaScript/Reference/Operators/Array_comprehensions
-tags:
- - JavaScript
- - Non-standard
- - Operator
- - Reference
-translation_of: Archive/Web/JavaScript/Array_comprehensions
----
-<div class="warning"><strong>Nicht standardisiert. Nicht einsetzen!</strong><br>
-Die Array Comprehensions Syntax ist nicht Standardisiert und wurde mit Firefox 58 entfernt. Zukünftig müssen {{jsxref("Array.prototype.map")}}, {{jsxref("Array.prototype.filter")}}, {{jsxref("Functions/Arrow_functions", "Pfeilfunktionen", "", 1)}}, und {{jsxref("Operators/Spread_operator", "Spread Syntax", "", 1)}} eingesetzt werden.</div>
-
-<div>{{jsSidebar("Operators")}}</div>
-
-<p>Die <strong>Array Comprehensions</strong> Syntax war ein JavaScript Ausdruck, welcher es erlaubt schnell ein neues Array auf Basis eines existierenden zu erstellen. Jedoch wurde diese vom Standard und der Firefox Implementierung entfernt. Nicht mehr einsetzen!</p>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox">[for (x of iterable) x]
-[for (x of iterable) if (condition) x]
-[for (x of iterable) for (y of iterable) x + y]
-</pre>
-
-<h2 id="Beschreibung">Beschreibung</h2>
-
-<p>In Array Comprehensions können zwei Arten von Komponenten eingesetzt werden:</p>
-
-<ul>
- <li>{{jsxref("Statements/for...of", "for...of")}} und</li>
- <li>{{jsxref("Statements/if...else", "if")}}</li>
-</ul>
-
-<p>Der <code>for-of</code> Iterator ist immer die erste Komponente. Mehrere <code>for-of</code> Iteratoren oder <code>if</code> Statements sind erlaubt.</p>
-
-<p>Array Comprehension wurden zuvor für den ECMAScript 2016 Standard vorgeschlagen und ist eine nützliche Kurzform zum Erstellen von neuen Arrays auf Basis des Inhalts andere.Comprehensions können oft statt den Aufrufen {{jsxref("Array.prototype.map", "map()")}} und {{jsxref("Array.prototype.filter", "filter()")}} eingesetzt werden oder als Möglichkeit beide zu kombinieren.</p>
-
-<p>Die folgende Comprehension nimmt ein Array von Zahlen und erstellt ein neues Array, dass das Doppelte jeder Zahl enthält.</p>
-
-<pre class="brush: js">var numbers = [1, 2, 3, 4];
-var doubled = [for (i of numbers) i * 2];
-console.log(doubled); // logs 2,4,6,8
-</pre>
-
-<p>Das ist äquivalent zu der folgenden {{jsxref("Array.prototype.map", "map()")}} Operation:</p>
-
-<pre class="brush: js">var doubled = numbers.map(i =&gt; i * 2);
-</pre>
-
-<p>Comprehensions können ebenfalls für das suchen bestimmter Elemente eingesetzt werden. Hier ist eine Comprehension welche nur gerade Zahlen auswählt:</p>
-
-<pre class="brush: js">var numbers = [1, 2, 3, 21, 22, 30];
-var evens = [for (i of numbers) if (i % 2 === 0) i];
-console.log(evens); // logs 2,22,30
-</pre>
-
-<p>{{jsxref("Array.prototype.filter", "filter()")}} kann mit dem gleichen Ergebnis benutzt werden:</p>
-
-<pre class="brush: js">var evens = numbers.filter(i =&gt; i % 2 === 0);
-</pre>
-
-<p>{{jsxref("Array.prototype.map", "map()")}} und {{jsxref("Array.prototype.filter", "filter()")}} Operation können in einer einzigen Array Comprehension kombiniert werden. Hier ist ein Beispiel, welches auf gerade Zahlen filtert und diese dann verdopelt:</p>
-
-<pre class="brush: js">var numbers = [1, 2, 3, 21, 22, 30];
-var doubledEvens = [for (i of numbers) if (i % 2 === 0) i * 2];
-console.log(doubledEvens); // logs 4,44,60
-</pre>
-
-<p><span id="result_box" lang="de"><span>Die eckigen Klammern einer Array </span></span>Comprehension<span lang="de"><span> führen einen impliziten Block für Gültigkeitsbereiche ein. Neue Variablen (wie i im Beispiel) werden so behandelt, als währen sie mit </span></span>{{jsxref("Statements/let","let")}} deklariert. Das bedeutet, dass sie nicht außerhalb der Comprehension sichtbar sind.</p>
-
-<p>Der Input einer Array Comprehension muss nicht selbst ein Array sein; <a href="/de/docs/Web/JavaScript/Guide/Iterators_and_Generators">Iteratoren und Generatoren</a> könne ebenfalls benutzt werden.</p>
-
-<p>Auch Strings können als Input genutzt werden;</p>
-
-<p>Even strings may be used as input; <span id="result_box" lang="de"><span>um die Filter- und Map-Aktionen (unter Array-ähnlichen Objekten) oben zu erreichen:</span></span></p>
-
-<pre class="brush: js">var str = 'abcdef';
-var consonantsOnlyStr = [for (c of str) if (!(/[aeiouAEIOU]/).test(c)) c].join(''); // 'bcdf'
-var interpolatedZeros = [for (c of str) c + '0' ].join(''); // 'a0b0c0d0e0f0'
-</pre>
-
-<p>Auch hier wird das Eingabeformat nicht beibehalten, so dass man {{jsxref("Array.prototype.join", "join()")}} benutzen muss, um wieder einen String zu bekommen.</p>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<h3 id="Einfache_Array_Comprehensions">Einfache Array Comprehensions</h3>
-
-<pre class="brush:js">[for (i of [1, 2, 3]) i * i ];
-// [1, 4, 9]
-
-var abc = ['A', 'B', 'C'];
-[for (letters of abc) letters.toLowerCase()];
-// ["a", "b", "c"]</pre>
-
-<h3 id="Array_Comprehensions_mit_if_Statement">Array Comprehensions mit if Statement</h3>
-
-<pre class="brush: js">var years = [1954, 1974, 1990, 2006, 2010, 2014];
-[for (year of years) if (year &gt; 2000) year];
-// [2006, 2010, 2014]
-[for (year of years) if (year &gt; 2000) if (year &lt; 2010) year];
-// [2006], the same as below:
-[for (year of years) if (year &gt; 2000 &amp;&amp; year &lt; 2010) year];
-// [2006]
-</pre>
-
-<h3 id="Array_Comprehensions_verglichen_zu_map_und_filter">Array Comprehensions verglichen zu <code>map</code> und <code>filter</code></h3>
-
-<p>Ein einfacher Weg um Generator Comprehension Syntax zu verstehen ist es sie mit den Array {{jsxref("Array.map", "map")}} und {{jsxref("Array.filter", "filter")}} Methoden zu vergleichen:</p>
-
-<pre class="brush: js">var numbers = [1, 2, 3];
-
-numbers.map(function (i) { return i * i });
-numbers.map(i =&gt; i * i);
-[for (i of numbers) i * i];
-// all are [1, 4, 9]
-
-numbers.filter(function (i) { return i &lt; 3 });
-numbers.filter(i =&gt; i &lt; 3);
-[for (i of numbers) if (i &lt; 3) i];
-// all are [1, 2]
-</pre>
-
-<h3 id="Array_Comprehensions_mit_zwei_Arrays">Array Comprehensions mit zwei Arrays</h3>
-
-<p>Einsatz von zwei for-of Iteratoren, um mit Arrays zu arbeiten:</p>
-
-<pre class="brush: js">var numbers = [1, 2, 3];
-var letters = ['a', 'b', 'c'];
-
-var cross = [for (i of numbers) for (j of letters) i + j];
-// ["1a", "1b", "1c", "2a", "2b", "2c", "3a", "3b", "3c"]
-
-var grid = [for (i of numbers) [for (j of letters) i + j]];
-// [
-// ["1a", "1b", "1c"],
-// ["2a", "2b", "2c"],
-// ["3a", "3b", "3c"]
-// ]
-
-[for (i of numbers) if (i &gt; 1) for (j of letters) if(j &gt; 'a') i + j]
-// ["2b", "2c", "3b", "3c"], the same as below:
-
-[for (i of numbers) for (j of letters) if (i &gt; 1) if(j &gt; 'a') i + j]
-// ["2b", "2c", "3b", "3c"]
-
-[for (i of numbers) if (i &gt; 1) [for (j of letters) if(j &gt; 'a') i + j]]
-// [["2b", "2c"], ["3b", "3c"]], not the same as below:
-
-[for (i of numbers) [for (j of letters) if (i &gt; 1) if(j &gt; 'a') i + j]]
-// [[], ["2b", "2c"], ["3b", "3c"]]
-</pre>
-
-<h2 id="Spezifikationen">Spezifikationen</h2>
-
-<p>War initial im ECMAScript 2015 Entwurf, wurde jedoch in der Überarbeitung 27 (August 2014) entfernt. Für Spezifikationssemantik muss in älteren Überarbeitungen von ES2015 nachgeschaut werden.</p>
-
-<h2 id="Browserkompatibilität">Browserkompatibilität</h2>
-
-
-
-<p>{{Compat("javascript.operators.array_comprehensions")}}</p>
-
-<h2 id="Unterschiede_zu_den_älteren_JS1.7JS1.8_Comprehensions">Unterschiede zu den älteren JS1.7/JS1.8 Comprehensions</h2>
-
-<div class="warning">JS1.7/JS1.8 Comprehensions wurden von Gecko 46 entfernt ({{bug(1220564)}}).</div>
-
-<p><strong>Alte Comprehensions Syntax (nicht mehr benutzen!):</strong></p>
-
-<pre class="brush: js example-bad">[X for (Y in Z)]
-[X for each (Y in Z)]
-[X for (Y of Z)]
-</pre>
-
-<p>Unterschiede:</p>
-
-<ul>
- <li>ESNext Comprehensions erstellen einen Gültigkeitsbereich pro "for" Statement statt einen für die komplette Comprehension.
- <ul>
- <li>Alt: <code>[...(()=&gt;x for (x of [0, 1, 2]))][1]() // 2</code></li>
- <li>Neu: <code>[...(for (x of [0, 1, 2]) ()=&gt;x)][1]() // 1, jede Iteration erstellt eine frische Bindung zu x. </code></li>
- </ul>
- </li>
- <li>ESNext Comprehensions beginnen mit "for" statt eines Zuweisungsausdrucks.
- <ul>
- <li>Alt: <code>(i * 2 for (i of numbers))</code></li>
- <li>Neu: <code>(for (i of numbers) i * 2)</code></li>
- </ul>
- </li>
- <li>ESNext Comprehensions können mehrere <code>if</code> und <code>for</code> Komponenten haben.</li>
- <li>ESNext Comprehensions funktionieren nur mit <code>{{jsxref("Statements/for...of", "for...of")}}</code> und nicht mit <code>{{jsxref("Statements/for...in", "for...in")}}</code> Iteration.</li>
-</ul>
-
-<p>Siehe <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1220564#c42">Bug 1220564, Kommentar 42</a> für Vorschläge zum Aktualisieren von Code.</p>
-
-<h2 id="Siehe_auch">Siehe auch</h2>
-
-<ul>
- <li>{{jsxref("Statements/for...of", "for...of")}}</li>
- <li>{{jsxref("Operators/Generator_comprehensions", "Generator Comprehensions", "" ,1)}}</li>
-</ul>
diff --git a/files/de/web/javascript/reference/operators/expression_closures/index.html b/files/de/web/javascript/reference/operators/expression_closures/index.html
deleted file mode 100644
index 16bda73cd4..0000000000
--- a/files/de/web/javascript/reference/operators/expression_closures/index.html
+++ /dev/null
@@ -1,76 +0,0 @@
----
-title: Ausdrucks Closures
-slug: Web/JavaScript/Reference/Operators/Expression_closures
-tags:
- - Functions
- - JavaScript
- - Reference
-translation_of: Archive/Web/JavaScript/Expression_closures
----
-<div class="warning"><strong>Nicht Standardisiert. Nicht benutzen!</strong><br>
-Die Ausdrucks Closure-Syntax ist eine veraltete Firefox spezifische Funktion und wurde mit Firefox 60 entfernt. In Zukunft sollten <a href="/de/docs/Web/JavaScript/Reference/Functions/Arrow_functions">Pfeilfunktionen</a> genutzt werden.</div>
-
-<div>{{jsSidebar("Operators")}}</div>
-
-<p>Ausdrucks Closures sind eine kurze Funktionssyntax für das Schreiben einfacher Funktionen.</p>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox">function [<em>name</em>]([<em>param1</em>[, <em>param2[</em>, ..., <em>paramN</em>]]])
- <em>expression</em>
-</pre>
-
-<h3 id="Parameter">Parameter</h3>
-
-<dl>
- <dt><code>name</code></dt>
- <dd>Der Funktionsname. Kann bei anonymen Funktionen weggelassen werden. Der Name ist nur lokal im Funktionskörper verfügbar.</dd>
- <dt><code>paramN</code></dt>
- <dd>Der Name eines Arguments, welcher der Funktion übergeben wird. Eine Funktion kann bis zu 255 Argumente haben.</dd>
- <dt><code>expression</code></dt>
- <dd>Der Ausdruck, welcher den Funktionskörper einer Funktion bildet.</dd>
-</dl>
-
-<h2 id="Beschreibung">Beschreibung</h2>
-
-<p>Diese Funktion ist nicht mehr als eine eine Kurzschreibweise für einfache Funktionen, die der Sprache einer typischen <a class="external" href="http://en.wikipedia.org/wiki/Lambda_calculus#Lambda_calculus_and_programming_languages">Lambda Notation</a> ähnelt.</p>
-
-<p>JavaScript 1.7 und älter:</p>
-
-<pre class="brush: js">function(x) { return x * x; }</pre>
-
-<p>JavaScript 1.8:</p>
-
-<pre class="brush: js">function(x) x * x</pre>
-
-<p>Die Syntax erlaubt es die Klammern und das 'return' Statement wegzulassen - sie sind implizit. Es gibt keine weiteren Vorteile, wenn man den Code so schreibt, außer dass es kürzer ist.</p>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<p>Eine Kurzschreibweise für Eventlistener:</p>
-
-<pre class="brush: js"> document.addEventListener('click', function() false, true);
-</pre>
-
-<p>Einsatz dieser Notation mit der Array Funktion <code>some</code> aus JavaScript 1.6:</p>
-
-<pre class="brush: js">elems.some(function(elem) elem.type == 'text');
-</pre>
-
-<h2 id="Browserkompatibilität">Browserkompatibilität</h2>
-
-
-
-<p>{{Compat("javascript.operators.expression_closures")}}</p>
-
-<h2 id="Siehe_auch">Siehe auch</h2>
-
-<ul>
- <li>{{jsxref("Functions_and_function_scope", "Funktionen und Funktionsgültigkeitsbereiche")}}</li>
- <li>{{jsxref("Function")}}</li>
- <li>{{jsxref("Statements/function", "Funktionsstatement")}}</li>
- <li>{{jsxref("Operators/function", "Funktionsausdruck")}}</li>
- <li>{{jsxref("Statements/function*", "function* Statement")}}</li>
- <li>{{jsxref("Operators/function*", "function* Ausdruck")}}</li>
- <li>{{jsxref("GeneratorFunction")}}</li>
-</ul>
diff --git a/files/de/web/javascript/reference/operators/generator_comprehensions/index.html b/files/de/web/javascript/reference/operators/generator_comprehensions/index.html
deleted file mode 100644
index 843865b399..0000000000
--- a/files/de/web/javascript/reference/operators/generator_comprehensions/index.html
+++ /dev/null
@@ -1,172 +0,0 @@
----
-title: Generator Comprehensions
-slug: Web/JavaScript/Reference/Operators/Generator_comprehensions
-tags:
- - Iterator
- - JavaScript
- - Non-standard
- - Reference
-translation_of: Archive/Web/JavaScript/Generator_comprehensions
----
-<div class="warning"><strong>Non standardisiert. Nicht einsetzen!</strong><br>
-Die Generator Comprehensions Syntax ist nicht standardisiert und wurde mit Firefox 58 entfernt. Zukünftig sollte stattdessen {{jsxref("Statements/function*", "Generatoren", "", 1)}} eingesetzt werden.</div>
-
-<div>{{jsSidebar("Operators")}}</div>
-
-<p>Die <strong>Generator Comprehensions</strong> Syntax war ein JavaScript Ausdruck welcher es erlaubt schnell einen neuen Generator auf Basis eines existierenden Iterable Objektes zu erstellen. Jedoch wurde diese aus dem Standard und der Firefox Implementierung entfernt. Sie soll nicht mehr eingesetzt werden!</p>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox">(for (x of iterable) x)
-(for (x of iterable) if (condition) x)
-(for (x of iterable) for (y of iterable) x + y)
-</pre>
-
-<h2 id="Beschreibung">Beschreibung</h2>
-
-<p>In der Generator Comprehension gibt es zwei erlaubte Arten von Komponenten:</p>
-
-<ul>
- <li>{{jsxref("Statements/for...of", "for...of")}} und</li>
- <li>{{jsxref("Statements/if...else", "if")}}</li>
-</ul>
-
-<p>Die <code>for-of</code> Iteration ist immer die erste Komponente. Mehrere <code>for-of</code> Iterationen oder <code>if</code> Statements sind erlaubt.</p>
-
-<p>Ein signifikanter Nachteil von {{jsxref("Operators/Array_comprehensions","Array Comprehensions","","true")}} ist, dass diese ein völlig neues Array im Speicher erstellt wird. Wenn der Input für die Comprehension selbst ein kleines Array ist, ist der entstehende Overhead nicht signifikant — aber wenn der Input ein langes Array ist oder ein teurer (oder tatsächlich unendlicher) Generator ist, kann die Erstellung eines neuen Arrays problematisch werden.</p>
-
-<p>Generatoren erlauben das nachträgliche Berechnen von Sequenzen, mit Elementen, die dann Berechnet werden, wenn sie benötigt werden. Generator Comprehensions sind syntaktisch fast identisch zu Array Comprehensions — sie benutzen runde Klammern statt eckigen Klammern — jedoch erstellen sie Generator statt eines Arrays, welcher dann ausgeführt werden kann, wenn es benötigt wird. Man kann diese Funktion als Kurzsyntax für das Erstellen von Generatoren sehen.</p>
-
-<p>Angenommen man hat ein Iterator <code>it</code> welcher über eine große Sequenz von Integers iteriert. Wir wollen einen neuen Iterator erstellen, der über das Doppelte des Integers iteriert. Eine Array Comprehension würde ein volles Array im Speicher erstellen, welches die doppelten Werte enthält:</p>
-
-<pre class="brush: js">var doubles = [for (i in it) i * 2];
-</pre>
-
-<p>Auf der anderen Seite würde eine Generator Comprehension einen neuen Iterator erstellen, welcher die verdoppelten Werte erste dann erstellt, wenn sie benötigt werden:</p>
-
-<pre class="brush: js">var it2 = (for (i in it) i * 2);
-console.log(it2.next()); // The first value from it, doubled
-console.log(it2.next()); // The second value from it, doubled
-</pre>
-
-<p>Wenn eine Generator Comprehension als Argument einer Funktion eingesetzt wird, können durch die Funktionsaufrufsklammern die äußeren Klammern weggelassen werden:</p>
-
-<pre class="brush: js">var result = doSomething(for (i in it) i * 2);
-</pre>
-
-<p>Der signifikante Unterschied zwischen den beiden Beispiel ist beim Einsatz der Generator Comprehension, dass man nur einmal über die ganze Datenstruktur iterieren muss, während bei der Array Comprehension zweimal iteriert werden muss, beim Erstellen und beim eigentlichen Iterieren.</p>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<h3 id="Einfache_Generator_Comprehensions">Einfache Generator Comprehensions</h3>
-
-<pre class="brush:js">(for (i of [1, 2, 3]) i * i );
-// generator function which yields 1, 4, and 9
-
-[...(for (i of [1, 2, 3]) i * i )];
-// [1, 4, 9]
-
-var abc = ['A', 'B', 'C'];
-(for (letters of abc) letters.toLowerCase());
-// generator function which yields "a", "b", and "c"
-</pre>
-
-<h3 id="Generator_Comprehensions_mit_if_Statement">Generator Comprehensions mit if Statement</h3>
-
-<pre class="brush: js">var years = [1954, 1974, 1990, 2006, 2010, 2014];
-
-(for (year of years) if (year &gt; 2000) year);
-// generator function which yields 2006, 2010, and 2014
-
-(for (year of years) if (year &gt; 2000) if (year &lt; 2010) year);
-// generator function which yields 2006, the same as below:
-
-(for (year of years) if (year &gt; 2000 &amp;&amp; year &lt; 2010) year);
-// generator function which yields 2006
-</pre>
-
-<h3 id="Generator_Comprehensions_verglichen_mit_Generatorfunktionen">Generator Comprehensions verglichen mit Generatorfunktionen</h3>
-
-<p>Ein einfacher Weg um Generator Comprehension Syntax zu verstehen ist es sie mit Generatorfunktionen zu vergleichen.</p>
-
-<p>Beispiel 1: Einfacher Generator:</p>
-
-<pre class="brush: js">var numbers = [1, 2, 3];
-
-// Generator function
-(function*() {
- for (let i of numbers) {
- yield i * i;
- }
-})();
-
-// Generator comprehension
-(for (i of numbers) i * i );
-
-// Result: both return a generator which yields [1, 4, 9]
-</pre>
-
-<p>Beispiel 2: Einsatz von <code>if</code> in Generatoren.</p>
-
-<pre class="brush: js">var numbers = [1, 2, 3];
-
-// Generator function
-(function*() {
- for (let i of numbers) {
- if (i &lt; 3) {
- yield i * 1;
- }
- }
-})();
-
-// Generator comprehension
-(for (i of numbers) if (i &lt; 3) i);
-
-// Result: both return a generator which yields [1, 2]</pre>
-
-<h2 id="Spezifikationen">Spezifikationen</h2>
-
-<p>Generator Comprehensions waren initial in dem ECMAScript 2015 Entwurf, jedoch wurden sie in der Überarbeitung 27 (August 2014) entfernt. Für Spezifikationssemantik muss in früheren Überarbeitungen von ES2015 nachgeschaut werden.</p>
-
-<h2 id="Browserkompatibilität">Browserkompatibilität</h2>
-
-
-
-<p>{{Compat("javascript.operators.generator_comprehensions")}}</p>
-
-<h2 id="Unterschiede_zu_den_älteren_JS1.7JS1.8_Comprehensions">Unterschiede zu den älteren JS1.7/JS1.8 Comprehensions</h2>
-
-<div class="warning">JS1.7/JS1.8 Comprehensions wurden von Gecko 46 entfernt ({{bug(1220564)}}).</div>
-
-<p><strong>Alte Comprehensions Syntax (nicht mehr benutzen!):</strong></p>
-
-<pre class="brush: js example-bad">(X for (Y in Z))
-(X for each (Y in Z))
-(X for (Y of Z))
-</pre>
-
-<p>Unterschiede:</p>
-
-<ul>
- <li>ES7 Comprehensions erstellen einen Gültigkeitsbereich pro "for" Statement statt einen für die komplette Comprehension.
- <ul>
- <li>Alt: <code>[...(()=&gt;x for (x of [0, 1, 2]))][1]() // 2</code></li>
- <li>Neu: <code>[...(for (x of [0, 1, 2]) ()=&gt;x)][1]() // 1, jede Iteration erstellt eine frische Bindung zu x. </code></li>
- </ul>
- </li>
- <li>ES7 Comprehensions beginnen mit "for" statt eines Zuweisungsausdrucks.
- <ul>
- <li>Alt: <code>(i * 2 for (i of numbers))</code></li>
- <li>Neu: <code>(for (i of numbers) i * 2)</code></li>
- </ul>
- </li>
- <li>ES7 Comprehensions können mehrere <code>if</code> und <code>for</code> Komponenten haben.</li>
- <li>ES7 Comprehensions funktionieren nur mit <code>{{jsxref("Statements/for...of", "for...of")}}</code> und nicht mit <code>{{jsxref("Statements/for...in", "for...in")}}</code> Iteration.</li>
-</ul>
-
-<h2 id="Siehe_auch">Siehe auch</h2>
-
-<ul>
- <li>{{jsxref("Statements/for...of", "for...of")}}</li>
- <li>{{jsxref("Operators/Array_comprehensions", "Array Comprehensions")}}</li>
-</ul>
diff --git a/files/de/web/javascript/reference/statements/for_each...in/index.html b/files/de/web/javascript/reference/statements/for_each...in/index.html
deleted file mode 100644
index 34a52f5397..0000000000
--- a/files/de/web/javascript/reference/statements/for_each...in/index.html
+++ /dev/null
@@ -1,122 +0,0 @@
----
-title: for each...in
-slug: Web/JavaScript/Reference/Statements/for_each...in
-tags:
- - Deprecated
- - JavaScript
- - Statement
-translation_of: Archive/Web/JavaScript/for_each...in
----
-<div>{{jsSidebar("Statements")}}</div>
-
-<div class="warning">
-<p>The <code>for each...in</code> statement is deprecated as the part of ECMA-357 (<a href="/de/docs/Archive/Web/E4X" title="/en-US/docs/E4X">E4X</a>) standard. E4X support has been removed, but for each...in will not be disabled and removed because of backward compatibility considerations. Consider using {{jsxref("Statements/for...of", "for...of")}} instead. (Please refer to {{bug("791343")}}.)</p>
-</div>
-
-<p>Die<code> <strong>for each...in</strong></code><strong> </strong>Schleife wiederholt die definierteVariable in jeder Instanz eines Objekts. Für jedes einzelne Vorkommen wird der bestimmte Befehl ausgeführt.</p>
-
-<h2 id="Syntax">Syntax</h2>
-
-<pre class="syntaxbox"><code>for each (<em>variable</em> in <em>object</em>) {
- <em>statement</em>
-}</code></pre>
-
-<dl>
- <dt><code>variable</code></dt>
- <dd>die Variable, die innerhalb des durchsuchten Projekts gesucht wird. Diese kann durch das Schlüsselwort var bestimmt werden. Die Variable wird Lokal innerhalb der Funktion definiert, nicht für die ganze Schleife.</dd>
-</dl>
-
-<dl>
- <dt><code>object</code></dt>
- <dd>das Objekt, innerhalb dessen die Werte gesucht werden.</dd>
-</dl>
-
-<dl>
- <dt><code>statement</code></dt>
- <dd>am Befehl, der bei jedem auftreten der gesuchten Eigenschaft ausgeführt wird. Um mehrere Befehle innerhalb der Schleife auszuführen, nutzen Sie für deren Gruppierung das {{jsxref("Statements/block", "Block")}} statement (<code>{ ... }</code>) .</dd>
-</dl>
-
-<h2 id="Beschreibung">Beschreibung</h2>
-
-<p>einige Eigenschaften werden nicht in der Schleife durchsucht. Diese umfassen alle standardmäßigen Methoden von Objekten, beispielsweise die String-Methode indexOf. Es werden jedoch alle vom Nutzer definierten Werte durchsucht.</p>
-
-<h2 id="Beispiele">Beispiele</h2>
-
-<h3 id="Nutzung_von_for_each...in">Nutzung von <code>for each...in</code></h3>
-
-<p>Warnung: Nutzen Sie eine derartige Schleife niemals in Arrays. Nutzen Sie diese nur für Objekte. Weitere Einzelheiten bei {{jsxref("Statements/for...in", "for...in")}}.</p>
-
-<p>der folgende Code Ausschnitt durchsucht die Eigenschaften eines Objektes und errechnet ihre Summe:</p>
-
-<pre class="brush:js">var sum = 0;
-var obj = {prop1: 5, prop2: 13, prop3: 8};
-
-for each (var item in obj) {
- sum += item;
-}
-
-console.log(sum); // logs "26", which is 5+13+8</pre>
-
-<h2 id="Spezifikationen">Spezifikationen</h2>
-
-<p>Kein teil der ECMA-262 Spezifikation. Implementiert in JavaScript 1.6 und deprecated.</p>
-
-<h2 id="Browserkompatibilität">Browserkompatibilitä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</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatGeckoDesktop("1.8")}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</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>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatGeckoMobile("1.0")}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h2 id="See_also">See also</h2>
-
-<ul>
- <li>{{jsxref("Statements/for...in", "for...in")}} -  ein ähnlicher Befehl, der die Namen der Eigenschaften durchsucht.</li>
- <li>{{jsxref("Statements/for...of", "for...of")}} - a similar statement that iterates over the property <em>values</em> but can only be used for iteratable types, so not for generic objects</li>
- <li>{{jsxref("Statements/for", "for")}}</li>
-</ul>