From 4b1a9203c547c019fc5398082ae19a3f3d4c3efe Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:41:15 -0500 Subject: initial commit --- .../global_objects/string/charat/index.html | 305 ++++++++++++++++++ .../global_objects/string/concat/index.html | 140 +++++++++ .../global_objects/string/endswith/index.html | 148 +++++++++ .../global_objects/string/fromcharcode/index.html | 134 ++++++++ .../global_objects/string/includes/index.html | 131 ++++++++ .../reference/global_objects/string/index.html | 310 +++++++++++++++++++ .../global_objects/string/indexof/index.html | 200 ++++++++++++ .../global_objects/string/lastindexof/index.html | 148 +++++++++ .../global_objects/string/length/index.html | 87 ++++++ .../global_objects/string/match/index.html | 140 +++++++++ .../global_objects/string/prototype/index.html | 189 +++++++++++ .../reference/global_objects/string/raw/index.html | 160 ++++++++++ .../global_objects/string/repeat/index.html | 286 +++++++++++++++++ .../global_objects/string/replace/index.html | 344 +++++++++++++++++++++ .../global_objects/string/slice/index.html | 152 +++++++++ .../global_objects/string/split/index.html | 212 +++++++++++++ .../global_objects/string/startswith/index.html | 150 +++++++++ .../global_objects/string/substr/index.html | 171 ++++++++++ .../global_objects/string/substring/index.html | 199 ++++++++++++ .../global_objects/string/suchen/index.html | 105 +++++++ .../global_objects/string/tolowercase/index.html | 79 +++++ .../global_objects/string/touppercase/index.html | 127 ++++++++ .../global_objects/string/trim/index.html | 93 ++++++ .../global_objects/string/trimleft/index.html | 58 ++++ .../global_objects/string/trimright/index.html | 58 ++++ 25 files changed, 4126 insertions(+) create mode 100644 files/de/web/javascript/reference/global_objects/string/charat/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/concat/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/endswith/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/fromcharcode/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/includes/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/indexof/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/lastindexof/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/length/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/match/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/prototype/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/raw/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/repeat/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/replace/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/slice/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/split/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/startswith/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/substr/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/substring/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/suchen/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/tolowercase/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/touppercase/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/trim/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/trimleft/index.html create mode 100644 files/de/web/javascript/reference/global_objects/string/trimright/index.html (limited to 'files/de/web/javascript/reference/global_objects/string') diff --git a/files/de/web/javascript/reference/global_objects/string/charat/index.html b/files/de/web/javascript/reference/global_objects/string/charat/index.html new file mode 100644 index 0000000000..815eb59bba --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/charat/index.html @@ -0,0 +1,305 @@ +--- +title: String.prototype.charAt() +slug: Web/JavaScript/Reference/Global_Objects/String/charAt +tags: + - JavaScript + - Method + - Prototype + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/charAt +--- +
{{JSRef}}
+ +

Die charAt()-Methode gibt das Zeichen an einer bestimmten Stelle eines Strings wieder.

+ +

Syntax

+ +
str.charAt(index)
+ +

Parameter

+ +
+
index
+
Eine Zahl zwischen 0 und str.length-1. Ist kein index gegeben, ist dieser automatisch 0.
+
+ +

Wiedergegebener Wert

+ +

Ein String, der das Zeichen an der angegebenen index-Stelle wiedergibt. Wenn index außerhalb der Reichweite liegt, wird ein leerer String zurückgegeben.
+  

+ +

Beschreibung

+ +

Zeichen in einem String werden von links nach rechts indexiert. Der Index des ersten Zeichens ist 0, der Index des letzten Zeichens eines Strings namens stringName ist stringName.length - 1.

+ +

Wenn kein Index bereitgestellt wird, ist dieser standardmäßig 0.

+ +

Beispiele

+ +

Wiedergabe von Zeichen an verschiedenen Stellen eines Strings

+ +

Das folgende Beispiel gibt Zeichen an verschiedenen Orten im String "Brave new world" wieder:

+ +
var anyString = 'Brave new world';
+console.log("Das Zeichen bei Index 0   ist '" + anyString.charAt()   + "'");
+// kein Index definiert, 0 als Standard genutzt
+
+console.log("Das Zeichen bei Index 0   ist '" + anyString.charAt(0)   + "'");
+console.log("Das Zeichen bei Index 1   ist '" + anyString.charAt(1)   + "'");
+console.log("Das Zeichen bei Index 2   ist '" + anyString.charAt(2)   + "'");
+console.log("Das Zeichen bei Index 3   ist '" + anyString.charAt(3)   + "'");
+console.log("Das Zeichen bei Index 4   ist '" + anyString.charAt(4)   + "'");
+console.log("Das Zeichen bei Index 999 ist '" + anyString.charAt(999) + "'");
+
+ +

Diese Zeilen geben folgendes wieder:

+ +
Das Zeichen bei Index 0   ist 'B'
+Das Zeichen bei Index 0   ist 'B'
+Das Zeichen bei Index 1   ist 'r'
+Das Zeichen bei Index 2   ist 'a'
+Das Zeichen bei Index 3   ist 'v'
+Das Zeichen bei Index 4   ist 'e'
+Das Zeichen bei Index 999 ist ''
+
+ +

Erhalten von vollständigen Zeichen

+ +

Der folgende Code versichert, dass der Gebrauch eines String-Loops immer das vollständige Zeichen wiedergibt - auch wenn der String Zeichen enthält, die nicht auf der mehrsprachigen Basisebene (MBE) vorhanden sind.

+ +
var str = 'A \uD87E\uDC04 Z'; // direkter Einsatz von nicht MBE-Zeichen auch möglich
+for (var i = 0, chr; i < str.length; i++) {
+  if ((chr = getWholeChar(str, i)) === false) {
+    continue;
+  }
+  // Übernehme diese Zeile zu Beginn jedes Loops,
+  // gib den kompletten String und Iterator an
+  // und gebe eine Variable wieder, die das individuelle Zeichen wiederspiegelt.
+
+  console.log(chr);
+}
+
+function getWholeChar(str, i) {
+  var code = str.charCodeAt(i);
+
+  if (Number.isNaN(code)) {
+    return ''; // Position not found
+  }
+  if (code < 0xD800 || code > 0xDFFF) {
+    return str.charAt(i);
+  }
+
+  // High surrogate (could change last hex to 0xDB7F to treat high private
+  // surrogates as single characters)
+  if (0xD800 <= code && code <= 0xDBFF) {
+    if (str.length <= (i + 1)) {
+      throw 'High surrogate without following low surrogate';
+    }
+    var next = str.charCodeAt(i + 1);
+      if (0xDC00 > next || next > 0xDFFF) {
+        throw 'High surrogate without following low surrogate';
+      }
+      return str.charAt(i) + str.charAt(i + 1);
+  }
+  // Low surrogate (0xDC00 <= code && code <= 0xDFFF)
+  if (i === 0) {
+    throw 'Low surrogate without preceding high surrogate';
+  }
+  var prev = str.charCodeAt(i - 1);
+
+  // (could change last hex to 0xDB7F to treat high private
+  // surrogates as single characters)
+  if (0xD800 > prev || prev > 0xDBFF) {
+    throw 'Low surrogate without preceding high surrogate';
+  }
+  // We can pass over low surrogates now as the second component
+  // in a pair which we have already processed
+  return false;
+}
+
+ +

In einer ECMAScript 2016-Umgebung, welche destruktive Benennung erlaubt, ist eine bündigere und  zu gewissem Grad flexiblere Alternative möglich, da es automatisch eine Erhöhung der entsprechenden Variable vornimmt (wenn das Zeichen
+ ein Ersatzpaar ist).

+ +
var str = 'A\uD87E\uDC04Z'; // direkter Einsatz von nicht MBE-Zeichen auch möglich
+for (var i = 0, chr; i < str.length; i++) {
+  [chr, i] = getWholeCharAndI(str, i);
+  // Adapt this line at the top of each loop, passing in the whole string and
+  // the current iteration and returning an array with the individual character
+  // and 'i' value (only changed if a surrogate pair)
+  // Übernehme diese Zeile zu Beginn jedes Loops,
+  // gib den kompletten String und Iterator an
+  // und gebe einen Array wieder, der die individuellen Zeichen und 'i'-Wert wiederspiegelt
+  // (nur geändert, wenn Ersatzpaar).
+
+  console.log(chr);
+}
+
+function getWholeCharAndI(str, i) {
+  var code = str.charCodeAt(i);
+
+  if (Number.isNaN(code)) {
+    return ''; // Position nicht gefunden
+  }
+  if (code < 0xD800 || code > 0xDFFF) {
+    return [str.charAt(i), i]; // Normales Zeichen, 'i' bleibt gleich
+  }
+
+  // High surrogate (could change last hex to 0xDB7F to treat high private
+  // surrogates as single characters)
+  if (0xD800 <= code && code <= 0xDBFF) {
+    if (str.length <= (i + 1)) {
+      throw 'High surrogate without following low surrogate';
+    }
+    var next = str.charCodeAt(i + 1);
+      if (0xDC00 > next || next > 0xDFFF) {
+        throw 'High surrogate without following low surrogate';
+      }
+      return [str.charAt(i) + str.charAt(i + 1), i + 1];
+  }
+  // Low surrogate (0xDC00 <= code && code <= 0xDFFF)
+  if (i === 0) {
+    throw 'Low surrogate without preceding high surrogate';
+  }
+  var prev = str.charCodeAt(i - 1);
+
+  // (could change last hex to 0xDB7F to treat high private surrogates
+  // as single characters)
+  if (0xD800 > prev || prev > 0xDBFF) {
+    throw 'Low surrogate without preceding high surrogate';
+  }
+  // Return the next character instead (and increment)
+  return [str.charAt(i + 1), i + 1];
+}
+
+ +

Korrigiere charAt(), um Zeichen der nicht mehrsprachigen Basisebene (MBE) zu unterstützen

+ +


+  Das obige Beispiel dürfte häufiger für diejenigen hilfreich sein, die nicht MBE-Zeichen unterstützen möchten (da man nicht wissen muss, wo nicht MBE-Zeichen vorkommen).  Falls man wünscht (durch Angabe eines Indexwerts) die Ersatzpaare innerhalb eines Strings als Einzelcharakter zu behandeln, kann man folgendes nutzen:

+ +
function fixedCharAt(str, idx) {
+  var ret = '';
+  str += '';
+  var end = str.length;
+
+  var surrogatePairs = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;
+  while ((surrogatePairs.exec(str)) != null) {
+    var li = surrogatePairs.lastIndex;
+    if (li - 2 < idx) {
+      idx++;
+    } else {
+      break;
+    }
+  }
+
+  if (idx >= end || idx < 0) {
+    return '';
+  }
+
+  ret += str.charAt(idx);
+
+  if (/[\uD800-\uDBFF]/.test(ret) && /[\uDC00-\uDFFF]/.test(str.charAt(idx + 1))) {
+    // Gehe eins weiter, da eins der Zeichen Teil eines Ersatzpaares ist
+    ret += str.charAt(idx + 1);
+  }
+  return ret;
+}
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES1')}}{{Spec2('ES1')}}erste Definition
{{SpecName('ES5.1', '#sec-15.5.4.4', 'String.prototype.charAt')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.charat', 'String.prototype.charAt')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.prototype.charat', 'String.prototype.charAt')}}{{Spec2('ESDraft')}} 
+ +

Browser-Kompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Standardunterstützung{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome für AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
 Standardunterstützung{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/concat/index.html b/files/de/web/javascript/reference/global_objects/string/concat/index.html new file mode 100644 index 0000000000..548135330f --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/concat/index.html @@ -0,0 +1,140 @@ +--- +title: String.prototype.concat() +slug: Web/JavaScript/Reference/Global_Objects/String/concat +tags: + - JavaScript + - Method + - Prototype + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/concat +--- +
{{JSRef}}
+ +

Die concat() Methode vereint den Text von einem oder mehreren Strings und gibt einen neuen String zurück.

+ +

Syntax

+ +
str.concat(string2[, string3, ..., stringN])
+ +

Parameters

+ +
+
string2...stringN
+
Strings die zu einem neuen String vereint werden sollen.
+
+ +

Rückgabewert

+ +

Ein neuer String, der die Texte der Strings hintereinander enthält.

+ +

Beschreibung

+ +

Die concat() Funktion kombiniert die Texte von einem oder mehreren Strings und gibt einen neuen String zurück. Das ändern des Textes eines Strings hat keine Auswirkungen auf die anderen Strings.

+ +

Beispiele

+ +

Einsatz von concat()

+ +

Das folgende Beispiel kombiniert Strings in einen neuen String.

+ +
var hello = 'Hello, ';
+console.log(hello.concat('Kevin', ' have a nice day.'));
+
+/* Hello, Kevin have a nice day. */
+
+ +

Performance

+ +

Es wird ausdrücklich empfohlen {{jsxref("Operators/Assignment_Operators", "Zuweisungsoperatoren", "", 1)}} (+, +=) statt der concat() Methode zu benutzen. Sie hierfür diesen Performancetest.

+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES3')}}{{Spec2('ES3')}}Initiale Definition. Implementiert in JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.5.4.6', 'String.prototype.concat')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.concat', 'String.prototype.concat')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.prototype.concat', 'String.prototype.concat')}}{{Spec2('ESDraft')}} 
+ +

Browserkompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/endswith/index.html b/files/de/web/javascript/reference/global_objects/string/endswith/index.html new file mode 100644 index 0000000000..73f37a9692 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/endswith/index.html @@ -0,0 +1,148 @@ +--- +title: String.prototype.endsWith() +slug: Web/JavaScript/Reference/Global_Objects/String/endsWith +tags: + - JavaScript + - Méthode + - Prototyp + - Referenz + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/endsWith +--- +
{{JSRef}}
+ +

Die Methode endsWith() bestimmt, ob ein String das Ende eines anderen Strings ist, und liefert entsprechend true oder false zurück.

+ +

Syntax

+ +
str.endsWith(suchString[, position])
+ +

Parameter

+ +
+
suchString
+
Der String, nach dem am Ende von str gesucht wird.
+
position
+
Optional. Durchsucht str, als wäre es nur position Zeichen lang. Standardmäßig wird die Länge von str benutzt, wird automatisch auf die Länge von str gebracht, falls diese überschritten wird.
+
+ +

Rückgabewert

+ +

Falls suchString das Ende von str ist, wird true zurückgeliefert, andernfalls wird false zurückgeliefert.

+ +

Beschreibung

+ +

Diese Methode bestimmt, ob ein String das Ende eines anderen Strings ist. Die Methode unterscheidet zwischen Groß- und Kleinschreibung.

+ +

Beispiele

+ +

Benutzung von endsWith()

+ +
var str = 'To be, or not to be, that is the question.';
+
+console.log(str.endsWith('question.')); // true
+console.log(str.endsWith('to be'));     // false
+console.log(str.endsWith('to be', 19)); // true
+
+ +

Polyfill

+ +

Diese Methode wurde der ECMAScript6-Spezifikation hinzugefügt und könnte noch nicht in allen JavaScript-Implementierungen verfügbar sein. Mithilfe des folgenden Code-Stücks kann die Methode auch bei fehlender Implementierung genutzt werden:

+ +
if (!String.prototype.endsWith) {
+  String.prototype.endsWith = function(searchString, position) {
+      var subjectString = this.toString();
+      if (typeof position !== 'number' || !isFinite(position) || Math.floor(position) !== position || position > subjectString.length) {
+        position = subjectString.length;
+      }
+      position -= searchString.length;
+      var lastIndex = subjectString.indexOf(searchString, position);
+      return lastIndex !== -1 && lastIndex === position;
+  };
+}
+
+ +

Spezifikation

+ + + + + + + + + + + + + + + + + + + +
SpecifikationStatusKommentar
{{SpecName('ES6', '#sec-string.prototype.endswith', 'String.prototype.endsWith')}}{{Spec2('ES6')}}Initiale Definition.
{{SpecName('ESDraft', '#sec-string.prototype.endswith', 'String.prototype.endsWith')}}{{Spec2('ESDraft')}} 
+ +

Browser-Kompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)EdgeInternet ExplorerOperaSafari
Grundlegende Unterstützung{{CompatChrome("41")}}{{CompatGeckoDesktop("17")}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatSafari("9")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Grundlegende Unterstützung{{CompatNo}}{{CompatChrome("36")}}{{CompatGeckoMobile("17")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/fromcharcode/index.html b/files/de/web/javascript/reference/global_objects/string/fromcharcode/index.html new file mode 100644 index 0000000000..1ddc144e28 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/fromcharcode/index.html @@ -0,0 +1,134 @@ +--- +title: String.fromCharCode() +slug: Web/JavaScript/Reference/Global_Objects/String/fromCharCode +translation_of: Web/JavaScript/Reference/Global_Objects/String/fromCharCode +--- +
{{JSRef}}
+ +

Die statische Methode String.fromCharCode() gibt einen String zurück, der mit der angegebenen Folge von Unicode-Zeichen erstellt wurde.

+ +

Syntax

+ +
String.fromCharCode(num1[, ...[, numN]])
+ +

Parameters

+ +
+
num1, ..., numN
+
Eine Folge von Zahlen als Unicode-Werte. Der Wertebreich liegt zwischen 0 und 65535 (0xFFFF). Zahlen, welche größer als 0xFFFF sind werden gekürzt.
+
+ +

Rückgabewert

+ +

Ein String, der die den Unicode-Werten zugeordneten Zeichen enthält.

+ +

Beschreibung

+ +

Diese Methode gibt einen String zurück und kein {{jsxref("String")}} Objekt.

+ +

Da fromCharCode() eine statische Methode von {{jsxref("String")}} ist, wird sie immer als String.fromCharCode() angewandt und nicht als Methode eines {{jsxref("String")}} Objekts, das erstellt wurde.

+ +

Beispiele

+ +

Verwendung von fromCharCode()

+ +
String.fromCharCode(65, 66, 67);   // gibt "ABC" zurück
+String.fromCharCode(0x2014);       // gibt "—" zurück
+String.fromCharCode(0x12014);      // gibt auch "—" zurück. Die Ziffer 1 wird weggekürzt und ignoriert.
+ +

Verwendung mit höheren Werten

+ +

Die meisten Unicode-Werte können mit einer 16-bit-Nummer dargestellt werden (wie in den Anfängen der JavaScript-Standardisierung erwartet) und fromCharCode() kann verwendet werden, um ein einzelnes Zeichen für die meisten gängigen Werde (d.h. UCS-2 Werte, die ein Subset von UTF-16 mit den am häufigsten vorkommenden Zeichen bilden) darzustellen. Um jedoch ALLE gültigen Unicode-Werte (bis zu 21 bits) darzustellen, ist fromCharCode() allein nicht ausreichend. Da die höheren Code Point Zeichen zwei "Ersatznummern" (mit niedrigerem Wert) verwenden, um ein einzelnes Zeichen darzustellen, kann {{jsxref("String.fromCodePoint()")}} (Teil des ES2015 Standards) verwendet werden, um ein solches Paar und damit auch diese Zeichen mit höheren Werten darzustellen.

+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES1')}}{{Spec2('ES1')}}Erstdefinition. Implementiert in JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.5.3.2', 'StringfromCharCode')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.fromcharcodes', 'String.fromCharCode')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.fromcharcodes', 'String.fromCharCode')}}{{Spec2('ESDraft')}} 
+ +

Browser-Kompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/includes/index.html b/files/de/web/javascript/reference/global_objects/string/includes/index.html new file mode 100644 index 0000000000..ee3aa6564c --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/includes/index.html @@ -0,0 +1,131 @@ +--- +title: String.prototype.includes() +slug: Web/JavaScript/Reference/Global_Objects/String/includes +tags: + - JavaScript + - Method + - Prototype + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/includes +--- +
{{JSRef}}
+ +

Die includes()-Methode gibt an, ob ein String innerhalb eines anderen Strings gefunden wird und gibt dabei true oder false wieder.

+ +

Syntax

+ +
str.includes(searchString[, position])
+ +

Parameter

+ +
+
searchString
+
Ein String, der innerhalb eines anderen Strings gesucht wird.
+
position
+
Optional. Die Position innerhalb des besuchten Strings durch searchString; Standard ist 0.
+
+ +

Wertwiedergabe

+ +

true, wenn der String den gesuchten String enthält, andernfalls false.

+ +

Beschreibung

+ +

Diese Methode lässt dich feststellen, ob ein String einen anderen String beinhaltet.

+ +

Achtung auf Groß-, Kleinschreibung

+ +

Bei der includes()-Methode muss auf Groß- und Kleinschreibung geachtet werden.
+ Zum Beispiel gibt die folgende Darstellung false aus:

+ +
'Blue Whale'.includes('blue'); // gibt false wieder
+
+ +

Beispiele

+ +

Einsatz von includes()

+ +
var str = 'Sein oder nicht sein, das ist hier die Frage.';
+
+console.log(str.includes('Sein'));        // true
+console.log(str.includes('Frage'));       // true
+console.log(str.includes('nicht da'));    // false
+console.log(str.includes('Sein', 1));     // false
+console.log(str.includes('SEIN'));        // false
+
+ +

Polyfill

+ +

Diese Methode wurde den ECMAScript 6 Spezifikationen hinzugefügt und könnte nicht in allen JavaScript-Umgebunden vorhanden sein. Jedoch kann man diesen Polyfill nutzen:

+ +
if (!String.prototype.includes) {
+  String.prototype.includes = function(search, start) {
+    'use strict';
+    if (typeof start !== 'number') {
+      start = 0;
+    }
+
+    if (start + search.length > this.length) {
+      return false;
+    } else {
+      return this.indexOf(search, start) !== -1;
+    }
+  };
+}
+
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + +
SpezifikationenStatusKommentar
{{SpecName('ES2015', '#sec-string.prototype.includes', 'String.prototype.includes')}}{{Spec2('ES2015')}}erste Definition
{{SpecName('ESDraft', '#sec-string.prototype.includes', 'String.prototype.includes')}}{{Spec2('ESDraft')}}
+ +

Browser-Kompatibilität

+ + + +

{{Compat("javascript.builtins.String.includes")}}

+ +

String.prototype.contains

+ +

In Firefox 18 - 39 hieß diese Methode contains(). Es wurde zu includes() ({{bug(1102219)}}) wegen folgender Gründe umbenannt:
+
+ Es wurde gemeldet, dass manche Webseiten, die MooTools 1.2 nutzen mit Firefox 17 nicht mehr funktionieren. Diese Version von MooTools kontrolliert, ob String.prototype.contains() existiert und, wenn nicht, fügt es seine eigene Funktion hinzu.
+ Mit der Einführung dieser Funktion in Firefox 17 wurde das Verhalten dieser Kontrolle geändert, sodass auf MooTools String.prototype.contains() basierender Code funktionsunfähig wurde.
+ Aufgrund dessen wurde die Implementierung in Firefox 17 abgeschaltet und String.prototype.contains() war in Firefox 18 nutzbar. Ermöglicht wurde dies durch die Veröffentlichung von MooTools Version 1.2.6.

+ +

MooTools 1.3 erzwingt die Nutzung der eigenen Version von String.prototype.contains(), demnach sollten Webseiten, die abhängig davon sind, weiterhin funktionieren. Beachte jedoch, dass sich die MooTools 1.3 Signatur von der ECMAScript 6 Signatur für diese Methode unterscheidet.

+ +

Später änderte MooTools 1.5+ die Signatur, um sie dem ES2015 Standard anzupassen.

+ +


+ In Firefox 48 wurde String.prototype.contains() entfernt. Nutze lediglich String.prototype.includes().

+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/index.html b/files/de/web/javascript/reference/global_objects/string/index.html new file mode 100644 index 0000000000..35faef0223 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/index.html @@ -0,0 +1,310 @@ +--- +title: String +slug: Web/JavaScript/Reference/Global_Objects/String +tags: + - ECMAScript 2015 + - JavaScript + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String +--- +
{{JSRef}}
+ +

Das globale String-Objekt ist ein Konstruktor für Strings, auch Zeichenketten genannt.

+ +

Syntax

+ +

String-Literale haben folgende Formen:

+ +
'string-text'
+"string-text"
+"中文 español deutsch English हिन्दी العربية português বাংলা русский 日本語 ਪੰਜਾਬੀ 한국어 தமிழ்"
+ +

Strings können auch direkt mit dem globalen String-Objekt erzeugt werden:

+ +
String(thing)
+ +

Parameter

+ +
+
thing
+
Alles, was in einen String umgewandelt werden kann.
+
+ +

Template-Literale

+ +

Ab ECMAScript 2015 können String-Literale auch durch sogenannte Template-Literale verkörpert werden:

+ +
`hallo welt`
+`hallo!
+ welt!`
+`hallo ${wer}`
+escape `${wer}`
+ +
+
+ +

Escape-Notation

+ +

Neben gewöhnlichen, druckbaren Zeichen gibt es Sonderzeichen, die mittels Escape-Notation kodiert werden können:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CodeAusgabe
\0das NULL-Zeichen
\'einfaches Anführungszeichen
\"doppeltes Anführungszeichen
\\Rückwärtsschrägstrich (backslash)
\nZeilenumbruch (new line)
\rZeilenanfang (carriage return)
\vvertikaler Tabulator
\tTabulator
\bBackspace
\fSeitenvorschub (form feed)
\uXXXXUnicode-Codepoint
\u{X} ... \u{XXXXXX}Unicode-Codepoint {{experimental_inline}}
\xXXLatin-1-Zeichen
+ +
+

Im Gegensatz zu einigen anderen Sprachen unterscheidet JavaScript nicht zwischen mit einfachen und doppelten Anführungszeichen versehenen Strings; deswegen funktionieren die obigen Escape-Sequenzen in Strings, die entweder mit einfachen oder doppelten Anführungszeichen erstellt wurden.

+
+ +
+
+ +

Lange String-Literale

+ +

Manchmal enthält der Programm-Code Strings, die sehr lang sind. Anstatt endlose Zeilen zu bewirken, die vielleicht am Rand des Editors umbrechen, kann ein String ausdrücklich in mehrere Zeilen im Quell-Code eingepasst werden, ohne seinen Inhalt zu beeinflussen. Es gibt zwei Arten, um das zu tun.

+ +

Es kann der +-Operator benutzt werden, um auf folgende Weise mehrere Strings aneinanderzuhängen:

+ +
let langerString = "Dies ist ein sehr langer String, der über " +
+                 "mehrere Zeilen verteilt werden muss, weil " +
+                 "sonst der Code unleserlich ist.";
+
+ +

Oder der Rückwärtsschrägstrich ("\") wird am Ende jeder Zeile benutzt, um anzugeben, dass der String in der nächsten Zeile weitergeht. Es sollte sichergestellt werden, dass nach dem Rückwärtsschrägstrich (backslash) kein Leer- oder ein anderes Zeichen (außer ein Zeilenumbruch) steht oder als Einrückung dient; sonst funktioniert es nicht. Diese Form sieht wie folgt aus:

+ +
let langerString = "Dies ist ein sehr langer String, der über \
+mehrere Zeilen verteilt werden muss, weil \
+sonst der Code unleserlich ist.";
+
+ +

Beide Arten erzeugen identische Strings.

+ +

Beschreibung

+ +

Strings sind nützlich, um Daten in Textform zu speichern. Manche der meist benutzten String-Operationen sind es, die {{jsxref("String.length", "length")}} abzufragen, Strings mittels + und += String-Operatoren zu verbinden, mit der {{jsxref("String.prototype.indexOf()", "indexOf()")}} -Methode die Existenz oder Position von Sub-Strings festzustellen oder Sub-Strings mit der {{jsxref("String.prototype.substring()", "substring()")}}-Methode zu extrahieren.

+ +

Zeichenabfrage

+ +

Es gibt zwei Möglichkeiten auf ein einzelnes Zeichen in einem String zuzugreifen. Die erste ist die {{jsxref("String.prototype.charAt()", "charAt()")}}-Methode:

+ +
return 'Katze'.charAt(1); // gibt "a" zurück
+
+ +

Die andere Möglichkeit (eingeführt in ECMAScript 5) ist, den String als ein Array-ähnliches Objekt zu behandlen, in dem einzelne Zeichen zu einem numerischen Index gehören:

+ +
return 'Katze'[1]; // gibt "a" zurück
+
+ +

Bei einen Zeichenzugriff mittels Klammernotation ist es nicht möglich, einen Wert zu löschen oder zuzuweisen. Die entsprechenden Eigenschaften sind weder überschreibbar noch konfigurierbar. (Siehe {{jsxref("Object.defineProperty()")}} für mehr Informationen.)

+ +

Strings vergleichen

+ +

C-Entwicklern steht die strcmp()-Funktion zur Verfügung, um Strings zu vergleichen. In JavaScript können die kleiner-als- und größer-als-Operatoren benutzt werden:

+ +
var a = 'a';
+var b = 'b';
+if (a < b) { // true
+  console.log(a + ' ist geringer als ' + b);
+} else if (a > b) {
+  console.log(a + ' ist größer als ' + b);
+} else {
+  console.log(a + ' und ' + b + ' sind gleich.');
+}
+
+ +

Ein ähnliches Ergebnis kann durch die {{jsxref("String.prototype.localeCompare()", "localeCompare()")}}-Methode erzielt werden, die von String-Instanzen übernommen wird.

+ +

Unterscheidung von String-Primitives und String-Objekten

+ +

Es ist zu betonen, dass JavaScript zwischen String-Objekten und primitiven String-Werten unterscheidet. (Das selbe gilt für {{jsxref("Boolean")}} und {{jsxref("Global_Objects/Number", "Numbers")}}.)

+ +

String-Literale (definiert mit doppelten oder einfachen Anführungszeichen) und Strings, die von String-Aufrufen in einem Nicht-Konstruktor-Kontext (z. B. ohne das {{jsxref("Operators/new", "new")}}-Schlüsselwort zu benutzen) zurückgegeben werden, sind String-Primitives. JavaScript wandelt automatisch Primitives zu String-Objekten um, so dass es möglich ist String-Objekt-Methoden für String-Primitives zu nutzen. In Kontexten, in denen eine Methode auf ein String-Primitive bezogen aufgerufen oder eine Eigenschaft eines solchen abgefragt wird, sorgt JavaScript dafür, dass das String-Primitive wie ein Objekt behandelt wird.

+ +
var s_prim = 'foo';
+var s_obj = new String(s_prim);
+
+console.log(typeof s_prim); // Loggt "string"
+console.log(typeof s_obj);  // Loggt "object"
+
+ +

String-Primitives und String-Objekte führen auch bei der Nutzung von {{jsxref("Global_Objects/eval", "eval()")}} zu unterschiedlichen Ergebnissen. An eval übergebene Primitives werden als Quell-Code behandelt; bei String-Objekten wird wie bei allen anderen Objekten das Objekt zurückgegeben. Zum Beispiel:

+ +
var s1 = '2 + 2';             // erzeugt ein String-Primitive
+var s2 = new String('2 + 2'); // erzeugt ein String-Objekt
+console.log(eval(s1));        // gibt die Zahl 4 zurück
+console.log(eval(s2));        // gibt den String "2 + 2" zurück
+
+ +

Aus diesen Gründen kann Code aufhören zu funktionieren, wenn er String-Objekte bemerkt, obwohl ein String-Primitive erwartet wird. Trotzdem brauchen sich Autoren normalerweise nicht um diesen Unterschied zu kümmern.

+ +

Ein String-Objekt kann mit der {{jsxref("String.prototype.valueOf()", "valueOf()")}}-Methode immer zu seiner Primitive-Entsprechung konvertiert werden.

+ +
console.log(eval(s2.valueOf())); // gibt die Zahl 4 zurück
+
+ +
Bemerkung: Für ein weiteres mögliches Herantreten an Strings in JavaScript sollte der Artikel über StringView — eine C-ähnliche Representation von Strings basierend auf typisierten Arrays gelesen werden.
+ +

Eigenschaften

+ +
+
{{jsxref("String.prototype")}}
+
Ermöglicht das Hinzufügen von Eigenschaften zu einem String-Objekt.
+
+ +

Methoden

+ +
+
{{jsxref("String.fromCharCode()")}}
+
Gibt einen String zurück, der auf Basis der angegebenen Folge von Unicode-Werten erstellt wurde.
+
{{jsxref("String.fromCodePoint()")}} {{experimental_inline}}
+
Gibt einen String zurück, der auf Basis der angegebenen Folge von Code-Points erstellt wurde.
+
{{jsxref("String.raw()")}} {{experimental_inline}}
+
Gibt einen String zurück, der auf Basis eines Raw-Template-Strings erstellt wurde.
+
+ +

Generische String-Methoden

+ +
+

Generische String-Methoden sind nicht Teil des Standards und werden in naher Zukunft entfernt.

+
+ +

Die String-Instanzmethoden stehen nach JavaScript 1.6 (nicht Teil des ECMAScript-Standards) auch in Firefox beim String-Objekt zur Verfügung, um String-Methoden auf ein beliebiges Objekt anzuwenden:

+ +
var num = 15;
+console.log(String.replace(num, /5/, '2'));
+
+ +

Über die Auflösung von generischen String-Methoden: Warning: String.x is deprecated; use String.prototype.x instead.

+ +

{{jsxref("Global_Objects/Array", "Generics", "#Array_generic_methods", 1)}} stehen auch bei {{jsxref("Array")}}-Methoden zur Verfügung.

+ +

String-Instanzen

+ +

Eigenschaften

+ +
{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/prototype', 'Properties')}}
+ +

Methoden

+ +

Nicht HTML-bezogene Methoden

+ +
{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/prototype', 'Methods_unrelated_to_HTML')}}
+ +

HTML-Wrapper-Methoden

+ +
{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/prototype', 'HTML_wrapper_methods')}}
+ +

Beispiele

+ +

String-Konvertierung

+ +

Es ist möglich, String als eine "sicherere" {{jsxref("String.prototype.toString()", "toString()")}}-Alternative zu benutzen, auch, wenn es gewöhnlich weiterhin das zugrundeliegende toString() aufruft. Es funktioniert auch für {{jsxref("null")}}, {{jsxref("undefined")}} und {{jsxref("Symbol", "symbols")}}. Zum Beispiel:

+ +
var ausgabeStrings = [];
+for (var i = 0, n = eingabeWerte.length; i < n; ++i) {
+  ausgabeStrings.push(String(eingabeWerte[i]));
+}
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusAnmerkung
{{SpecName('ES1')}}{{Spec2('ES1')}}Anfängliche Definition
{{SpecName('ES5.1', '#sec-15.5', 'String')}}{{Spec2('ES5.1')}} 
{{SpecName('ES2015', '#sec-string-objects', 'String')}}{{Spec2('ES2015')}} 
{{SpecName('ESDraft', '#sec-string-objects', 'String')}}{{Spec2('ESDraft')}} 
+ +

Browser-Kompatibilität

+ +

{{Compat("javascript.builtins.String.String")}}

+ +

Siehe außerdem

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/indexof/index.html b/files/de/web/javascript/reference/global_objects/string/indexof/index.html new file mode 100644 index 0000000000..dc36abfae8 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/indexof/index.html @@ -0,0 +1,200 @@ +--- +title: String.prototype.indexOf() +slug: Web/JavaScript/Reference/Global_Objects/String/indexOf +tags: + - JavaScript + - Method + - Prototype + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/indexOf +--- +
{{JSRef}}
+ +

Die indexOf() Methode gibt den Index der Zeichenkette innerhalb des aufrufenden {{jsxref("Global_Objects/String", "String")}} Objekts des ersten Vorkommnis des angegebenen Wertes beginnend bei fromIndex zurück. Gibt -1 zurück, wenn der Wert nicht gefunden wurde.

+ +

Syntax

+ +
str.indexOf(searchValue[, fromIndex])
+ +

Parameter

+ +
+
searchValue
+
Ein String der den zu suchenden Wert repräsentiert.
+
fromIndex {{optional_inline}}
+
Der Index, von dem angefangen wird vorwärts im String zu suchen. Der Standardwert ist 0, so dass der ganze String durchsucht wird. Wenn fromIndex < 0 ist, wird der ganze String durchsucht. Wenn  fromIndex >= str.length ist, wird der String nicht durchsucht und -1 wird zurückgegeben. Die Ausnahme ist, wenn für searchValue ein leeren String eingesetzt wird, dann wird str.length zurückgegeben.
+
+ +

Rückgabewert

+ +

Den Index des ersten Vorkommens des gesuchten Wertes; -1 wenn der Wert nicht gefunden wurde.

+ +

Beschreibung

+ +

Die Zeichen in einem String sind von links nach rechts nummeriert. Der Index des ersten Zeichens ist 0, und der Index des letzten Zeichens eines Strings mit Namen stringName ist stringName.length - 1.

+ +
'Blue Whale'.indexOf('Blue');     // returns  0
+'Blue Whale'.indexOf('Blute');    // returns -1
+'Blue Whale'.indexOf('Whale', 0); // returns  5
+'Blue Whale'.indexOf('Whale', 5); // returns  5
+'Blue Whale'.indexOf('', 9);      // returns  9
+'Blue Whale'.indexOf('', 10);     // returns 10
+'Blue Whale'.indexOf('', 11);     // returns 10
+
+ +

Groß- und Kleinschreibung

+ +

Die indexOf() Methode unterscheidet zwischen Groß- und Kleinschreibung. Zum Beispiel gibt die folgende Zeile -1 zurück:

+ +
'Blue Whale'.indexOf('blue'); // returns -1
+
+ +

Vorkommnisse prüfen

+ +

Zu beachten ist, dass '0' nicht zu true und '-1' nicht zu false ausgewertet wird. Deswegen ist der korrekte weg zum überprüfen, ob ein String in einem anderen String existiert, der folgende:

+ +
'Blue Whale'.indexOf('Blue') != -1; // true
+'Blue Whale'.indexOf('Bloe') != -1; // false
+
+ +

Beispiele

+ +

Einsatz von indexOf() und lastIndexOf()

+ +

Die folgenden Beispiele benutzen indexOf() und {{jsxref("String.prototype.lastIndexOf()", "lastIndexOf()")}}, um Werte im String "Brave new world" zu finden.

+ +
var anyString = 'Brave new world';
+
+console.log('The index of the first w from the beginning is ' + anyString.indexOf('w'));
+// Displays 8
+console.log('The index of the first w from the end is ' + anyString.lastIndexOf('w'));
+// Displays 10
+
+console.log('The index of "new" from the beginning is ' + anyString.indexOf('new'));
+// Displays 6
+console.log('The index of "new" from the end is ' + anyString.lastIndexOf('new'));
+// Displays 6
+
+ +

indexOf() und Groß- und Kleinschreibung

+ +

Das folgende Beispiel definiert zwei Strings. Die Variablen enthalten den selben String, außer dass der zweite String Großbuchstaben enthält. Die erste {{domxref("console.log()")}} Methode zeigt 19. Da die indexOf() Methode Groß- und Kleinschreibung unterscheidet, wird der String"cheddar" im String myCapString nicht gefunden. Deshalb gibt die zweite console.log() Methode -1 zurück.

+ +
var myString    = 'brie, pepper jack, cheddar';
+var myCapString = 'Brie, Pepper Jack, Cheddar';
+
+console.log('myString.indexOf("cheddar") is ' + myString.indexOf('cheddar'));
+// Displays 19
+console.log('myCapString.indexOf("cheddar") is ' + myCapString.indexOf('cheddar'));
+// Displays -1
+
+ +

Einsatz von indexOf(), um das Vorkommen eines Buchstaben in einem String zu zählen

+ +

Das folgende Beispiel setzt count auf die Anzahl der Vorkommnisse des Buchstaben e in dem String str:

+ +
var str = 'To be, or not to be, that is the question.';
+var count = 0;
+var pos = str.indexOf('e');
+
+while (pos != -1) {
+  count++;
+  pos = str.indexOf('e', pos + 1);
+}
+
+console.log(count); // displays 4
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES1')}}{{Spec2('ES1')}}Initiale Definition.
{{SpecName('ES5.1', '#sec-15.5.4.7', 'String.prototype.indexOf')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.indexof', 'String.prototype.indexOf')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.prototype.indexof', 'String.prototype.indexOf')}}{{Spec2('ESDraft')}} 
+ +

Browserkompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/lastindexof/index.html b/files/de/web/javascript/reference/global_objects/string/lastindexof/index.html new file mode 100644 index 0000000000..b6c6f3a548 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/lastindexof/index.html @@ -0,0 +1,148 @@ +--- +title: String.prototype.lastIndexOf() +slug: Web/JavaScript/Reference/Global_Objects/String/lastIndexOf +translation_of: Web/JavaScript/Reference/Global_Objects/String/lastIndexOf +--- +
{{JSRef("Global_Objects", "String")}}
+ +

Zusammenfassung

+ +

Die lastIndexOf() Methode gibt den Index des letzten Vorkommnisses des angegebenen Wertes innerhalb des aufrufenden {{jsxref("Global_Objects/String", "Strings")}} Objekts zurück, oder -1, wenn der Wert nicht gefunden wurde. Der aufrufende String wird rückwärts durchsucht, beginnend beim fromIndex

+ +

Syntax

+ +
str.lastIndexOf(searchValue[, fromIndex])
+ +

Parameter

+ +
+
searchValue
+
Ein String mit dem Wert, nach dem gesucht werden soll.
+
fromIndex
+
Optional. Die Position im aufrufenden String, ab der gesucht rückwärts werden soll. The Position wird gezählt von links nach rechts. Gesucht wird von dieser Position ab nach links. Diese kann jeden Integerwert annehmen. Der Standartwert ist str.length. Wenn der Wert negativ ist, wird 0 verwendet. Wenn fromIndex > str.length, wird str.length statt fromIndex benutzt.
+
+ +

Beschreibung

+ +

Zeichen in einem String werden von links nach rechts gezählt. Der Index des ersten Zeichens ist 0, der Index des letzten Zeichens ist stringName.length - 1.

+ +
'canal'.lastIndexOf('a');     // returns 3
+'canal'.lastIndexOf('a', 2);  // returns 1
+'canal'.lastIndexOf('a', 0);  // returns -1
+'canal'.lastIndexOf('x');     // returns -1
+
+ +

Groß- und Kleinschreibung

+ +

Die lastIndexOf() Methode unterscheidet zwischen Groß- und Kleinschreibung. Der folgende Ausdruck gibt zum Beispiel -1 zurück.

+ +
'Blue Whale, Killer Whale'.lastIndexOf('blue'); // returns -1
+
+ +

Beispiele

+ +

Beispiel: Benutzung von indexOf() und lastIndexOf()

+ +

Das folgende Beispiel verwendet {{jsxref("String.prototype.indexOf()", "indexOf()")}} und lastIndexOf(), um Werte im String "Brave new world" zu finden.

+ +
var anyString = 'Brave new world';
+
+console.log('The index of the first w from the beginning is ' + anyString.indexOf('w'));
+// Displays 8
+console.log('The index of the first w from the end is ' + anyString.lastIndexOf('w'));
+// Displays 10
+
+console.log('The index of "new" from the beginning is ' + anyString.indexOf('new'));
+// Displays 6
+console.log('The index of "new" from the end is ' + anyString.lastIndexOf('new'));
+// Displays 6
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
ECMAScript 1st Edition.StandardInitial definition.
{{SpecName('ES5.1', '#sec-15.5.4.8', 'String.prototype.lastIndexOf')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.lastindexof', 'String.prototype.lastIndexOf')}}{{Spec2('ES6')}} 
+ +

Browserkompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Links

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/length/index.html b/files/de/web/javascript/reference/global_objects/string/length/index.html new file mode 100644 index 0000000000..555d22094a --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/length/index.html @@ -0,0 +1,87 @@ +--- +title: String.length +slug: Web/JavaScript/Reference/Global_Objects/String/length +tags: + - JavaScript + - Property + - Prototype + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/length +--- +
{{JSRef}}
+ +

Die length Eigenschaft repräsentiert die Länge eines Strings.

+ +

Syntax

+ +
str.length
+ +

Beschreibung

+ +

Die length Eigenschaft gibt die Anzahl der Codeteile des Strings zurück. Javascript verwendet {{interwiki("wikipedia", "UTF-16")}}. , also einen 16-Bit Code zur Kodierung der meisten Zeichen, aber zur Darstellung weniger verbreiteter Zeichen werden 2 Codes benötigt. Es ist also durchaus möglich, dass der zurückgegebene Wert nicht der Anzahl der Zeichen in einem String entspricht.

+ +

ECMAScript 2016 (ed. 7) Spezifikation definiert eine maximale Länge von 253 - 1 Elementen.
+ Vor dieser Spezifikation war keine maximale Länge an Elementen definiert.

+ +

Ein leerer String hat die Länge 0.

+ +

Die statische String-Eigenschaft gibt den Wert 1 zurück.

+ +

Beispiele

+ +

Grundlegende Nutzung

+ +
var str = 'Mozilla';
+var leerstr = '';
+
+console.log('Mozilla ist ' + str.length + ' Zeichen lang');
+/* "Mozilla ist 7 Zeichen lang" */
+
+console.log('Der leere String hat eine Länge von ' + leerstr.length + 'Zeichen');
+/* "Der leere String hat eine Länge von 0 Zeichen" */
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES1')}}{{Spec2('ES1')}}Initiale Deinition. Implementiert in JavaScript 1.0.
{{SpecName('ES5.1', '#sec-15.5.5.1', 'String.prototype.length')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-properties-of-string-instances-length', 'String.prototype.length')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-properties-of-string-instances-length', 'String.prototype.length')}}{{Spec2('ESDraft')}} 
+ +

Browserkompatibilität

+ + + +

{{Compat("javascript.builtins.String.length")}}

+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/match/index.html b/files/de/web/javascript/reference/global_objects/string/match/index.html new file mode 100644 index 0000000000..27bfac9c75 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/match/index.html @@ -0,0 +1,140 @@ +--- +title: String.prototype.match() +slug: Web/JavaScript/Reference/Global_Objects/String/match +tags: + - JavaScript + - Method + - Property + - Reference + - Regular Expression + - String + - match + - Übereinstimmung +translation_of: Web/JavaScript/Reference/Global_Objects/String/match +--- +
{{JSRef}}
+ +

match() gibt zurück, wo ein regulärer Ausdruck in einem String enthalten ist. 

+ +

Syntax

+ +
str.match(regexp)
+ +

Parameter

+ +
+
regexp
+
Ein regulärer Ausdruck. Falls regexp kein Objekt vom Typ {{jsxref("RegExp")}} ist wird es mit Hilfe von new RegExp(obj) konvertiert. Falls dieser Parameter nicht übergeben wird, wird ein {{jsxref("Array")}} mit einem leeren {{jsxref("String")}} zurückgegben: [""].
+
+ +

Rückgabewert

+ +

Es wird ein {{jsxref("Array")}} zurückgegeben, das als erstes Element den gesamten übereinstimmenden String enthält, gefolgt von allen weiteren Treffern, die in Klammern angegeben wurden. Falls keine Übereinstimmungen gefunden wurden, wird {{jsxref("null")}} zurückgegeben.

+ +

Beschreibung

+ +

Falls der reguläre Ausdruck nicht den Modifikator g enthält, verhält sich match() wie {{jsxref("RegExp.prototype.exec()", "RegExp.exec()")}}. Im zurückgegebenen {{jsxref("Array")}} sind zusätzlich die propertys input und index  enthalten. input ist gleich dem zu durchsuchenden String, index enthält den Index der Übereinstimmung.

+ +

Falls der g Modifikator im regulären Ausdruck enthalten ist, wird ein {{jsxref("Array")}} mit allen übereinstimmenden Substrings zurückgegeben.

+ +

Beispiele

+ +

Verwendung von match()

+ +

Im folgenden Beispiel wird match() verwendet um 'Kapitel' und anschließend eine oder mehrere Zahlen, gefolgt von einem Punkt und einer Zahl, 0 oder mehrmals zu finden. Der reguläre Ausdruck enthält den i Modifikator und unterscheidet somit nicht zwischen Groß- und Kleinschreibung.

+ +
var str = 'Fuer mehr Informationen siehe Kapitel 3.4.5.1';
+var re = /siehe (kapitel \d+(\.\d)*)/i;
+var found = str.match(re);
+
+console.log(found);
+
+// gibt folgendes auf der Konsole aus:
+//   [ 'siehe Kapitel 3.4.5.1',
+//     'Kapitel 3.4.5.1',
+//     '.1',
+//     index: 22,
+//     input: 'Fuer mehr Informationen siehe Kapitel 3.4.5.1' ]
+
+ +

Verwendung von match() mit den i und g Modifikatoren

+ +

Die Buchstaben von A - E und von a - e werden auf der Konsole ausgegeben.

+ +
var str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
+var regexp = /[A-E]/gi;
+var matches_array = str.match(regexp);
+
+console.log(matches_array);
+// ['A', 'B', 'C', 'D', 'E', 'a', 'b', 'c', 'd', 'e']
+
+ +

match() ohne Parameter

+ +
var str = "Nichts kommt von nichts.";
+
+str.match();
+// [""]
+ +

Verwendung mit einem nicht regulären Ausdruck

+ +

Falls ein String oder eine Zahl anstatt eines regulären Ausdrucks übergeben wird, wird der Parameter in einen {{jsxref("RegExp", "regulären Ausdruck")}} konvertiert. Ist es eine positive Zahl mit Vorzeichen, wird das positive Vorzeichen ignoriert.

+ +
var str1 = "NaN bedeutet not a number. Infinity enthält -Infinity and +Infinity in JavaScript.",
+    str2 = "Zahlen: 1, 6, 3",
+    str3 = "null ist ein Datentyp.";
+
+str1.match("number");   // ["number"]
+str1.match(NaN);        // ["NaN"]
+str1.match(Infinity);   // ["Infinity"]
+str1.match(+Infinity);  // ["Infinity"]
+str1.match(-Infinity);  // ["-Infinity"]
+str2.match(6);          // ["6"]
+str2.match(+3);         // ["3"]
+str3.match(null);       // ["null"]
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusExtras
{{SpecName('ES3')}}{{Spec2('ES3')}}Anfangsdefinition. Implementiert in JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.5.4.10', 'String.prototype.match')}}{{Spec2('ES5.1')}}
{{SpecName('ES6', '#sec-string.prototype.match', 'String.prototype.match')}}{{Spec2('ES6')}}
{{SpecName('ESDraft', '#sec-string.prototype.match', 'String.prototype.match')}}{{Spec2('ESDraft')}}
+ +

Browser-Kompatibilität

+ + + +

{{Compat("javascript.builtins.String.match")}}

+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/prototype/index.html b/files/de/web/javascript/reference/global_objects/string/prototype/index.html new file mode 100644 index 0000000000..e2c896b98d --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/prototype/index.html @@ -0,0 +1,189 @@ +--- +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 +--- +
{{JSRef}}
+ +

Die String.prototypeEigenschaft repräsentiert das Prototypobjekt {{jsxref ("String")}}.

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

Beschreibung

+ +

Alle {{jsxref ("String")}} Instanzen erben von String.prototypeÄnderungen am StringPrototypobjekt werden an alle Instanzen von {{jsxref ("String")}} weitergegeben.

+ +

Eigenschaften

+ +
+
String.prototype.constructor
+
Gibt die Funktion an, mit der der Prototyp eines Objekts erstellt wird.
+
{{jsxref ("String.prototype.length")}}
+
Reflektiert die Länge der Zeichenfolge.
+
N
+
Wird verwendet, um auf das Zeichen an der N- ten Position zuzugreifen, wobei N eine ganze Zahl zwischen 0 und eins ist, die kleiner als der Wert von {{jsxref ("String.length", "length")} ist. Diese Eigenschaften sind schreibgeschützt.
+
+ +

Methods

+ +

Methoden

+ +

Methoden, die nichts mit HTML zu tun haben

+ +
+
{{jsxref ("String.prototype.charAt ()")}}
+
Gibt das Zeichen (genau eine UTF-16-Codeeinheit) am angegebenen Index zurück.
+
{{jsxref ("String.prototype.charCodeAt ()")}}
+
Gibt eine Zahl zurück, die der UTF-16-Code-Einheitswert am angegebenen Index ist.
+
{{jsxref ("String.prototype.codePointAt ()")}}
+
Gibt eine nicht negative Ganzzahl zurück, die der Codepunktwert des UTF-16-codierten Codepunkts ab dem angegebenen Index ist.
+
{{jsxref ("String.prototype.concat ()")}}
+
Kombiniert den Text zweier Zeichenfolgen und gibt eine neue Zeichenfolge zurück.
+
{{jsxref ("String.prototype.includes ()")}}
+
Legt fest, ob eine Zeichenfolge in einer anderen Zeichenfolge gefunden werden darf.
+
{{jsxref ("String.prototype.endsWith ()")}}
+
Bestimmt, ob eine Zeichenfolge mit den Zeichen einer anderen Zeichenfolge endet.
+
{{jsxref ("String.prototype.indexOf ()")}}
+
Gibt den Index innerhalb des aufrufenden {{jsxref ("String")}} Objekts des ersten Vorkommens des angegebenen Werts zurück oder -1, falls nicht gefunden.
+
{{jsxref ("String.prototype.lastIndexOf ()")}}
+
Gibt den Index innerhalb des aufrufenden {{jsxref ("String")}} Objekts des letzten Vorkommens des angegebenen Werts zurück oder -1, falls nicht gefunden.
+
{{jsxref ("String.prototype.localeCompare ()")}}
+
Gibt eine Zahl zurück, die angibt, ob eine Referenzzeichenfolge vor oder nach der angegebenen Zeichenfolge in Sortierreihenfolge steht oder mit dieser übereinstimmt.
+
{{jsxref ("String.prototype.match ()")}}
+
Wird verwendet, um einen regulären Ausdruck mit einer Zeichenfolge abzugleichen.
+
{{jsxref ("String.prototype.matchAll ()")}}
+
Gibt einen Iterator aller Übereinstimmungen zurück.
+
{{jsxref ("String.prototype.normalize ()")}}
+
Gibt die Unicode-Normalisierungsform des aufrufenden Zeichenfolgenwerts zurück.
+
{{jsxref ("String.prototype.padEnd ()")}}
+
Füllt die aktuelle Zeichenfolge am Ende mit einer bestimmten Zeichenfolge auf, um aus einer bestimmten Länge eine neue Zeichenfolge zu erstellen.
+
{{jsxref ("String.prototype.padStart ()")}}
+
Füllt die aktuelle Zeichenfolge von Anfang an mit einer bestimmten Zeichenfolge auf, um aus einer bestimmten Länge eine neue Zeichenfolge zu erstellen.
+
{{jsxref ("String.prototype.quote ()")}} {{obsolete_inline}}
+
Umschließt die Zeichenfolge in doppelte Anführungszeichen (" "").
+
{{jsxref ("String.prototype.repeat ()")}}
+
Gibt eine Zeichenfolge zurück, die aus den Elementen des Objekts besteht, die zu den angegebenen Zeiten wiederholt wurden.
+
{{jsxref ("String.prototype.replace ()")}}
+
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.
+
{{jsxref ("String.prototype.search ()")}}
+
Führt die Suche nach einer Übereinstimmung zwischen einem regulären Ausdruck und einer angegebenen Zeichenfolge aus.
+
{{jsxref ("String.prototype.slice ()")}}
+
Extrahiert einen Abschnitt einer Zeichenfolge und gibt eine neue Zeichenfolge zurück.
+
{{jsxref ("String.prototype.split ()")}}
+
Teilt ein {{jsxref ("Global_Objects / String", "String")}} -Objekt in ein Array von Zeichenfolgen auf, indem die Zeichenfolge in Teilzeichenfolgen aufgeteilt wird.
+
{{jsxref ("String.prototype.startsWith ()")}}
+
Legt fest, ob eine Zeichenfolge mit den Zeichen einer anderen Zeichenfolge beginnt.
+
{{jsxref ("String.prototype.substr ()")}} {{deprecated_inline}}
+
Gibt die Zeichen in einer Zeichenfolge zurück, die an der angegebenen Position mit der angegebenen Anzahl von Zeichen beginnt.
+
{{jsxref ("String.prototype.substring ()")}}
+
Gibt die Zeichen in einer Zeichenfolge zwischen zwei Indizes in die Zeichenfolge zurück.
+
{{jsxref ("String.prototype.toLocaleLowerCase ()")}}
+
Die Zeichen in einer Zeichenfolge werden unter Berücksichtigung des aktuellen Gebietsschemas in Kleinbuchstaben konvertiert. Für die meisten Sprachen wird das Gleiche wie {{jsxref ("String.prototype.toLowerCase ()", "toLowerCase ()")}} zurückgegeben.
+
{{jsxref ("String.prototype.toLocaleUpperCase ()")}}
+
Die Zeichen in einer Zeichenfolge werden unter Berücksichtigung des aktuellen Gebietsschemas in Großbuchstaben umgewandelt. Für die meisten Sprachen wird das Gleiche wie {{jsxref ("String.prototype.toUpperCase ()", "toUpperCase ()")}} zurückgegeben.
+
{{jsxref ("String.prototype.toLowerCase ()")}}
+
Gibt den aufrufenden Zeichenfolgenwert zurück, der in Kleinbuchstaben konvertiert wurde.
+
{{jsxref ("String.prototype.toSource ()")}} {{non-standard_inline}}
+
Gibt ein Objektliteral zurück, das das angegebene Objekt darstellt. Mit diesem Wert können Sie ein neues Objekt erstellen. Überschreibt die Methode {{jsxref ("Object.prototype.toSource ()")}}.
+
{{jsxref ("String.prototype.toString ()")}}
+
Gibt eine Zeichenfolge zurück, die das angegebene Objekt darstellt. Überschreibt die Methode {{jsxref ("Object.prototype.toString ()")}}.
+
{{jsxref ("String.prototype.toUpperCase ()")}}
+
Gibt den aufrufenden Zeichenfolgenwert zurück, der in Großbuchstaben konvertiert wurde.
+
{{jsxref ("String.prototype.trim ()")}}
+
Schneidet Leerzeichen vom Anfang und Ende der Zeichenfolge ab. Teil des ECMAScript 5-Standards.
+
{{jsxref ("String.prototype.trimStart ()")}}
+ {{jsxref ("String.prototype.trimLeft ()")}}
+
Schneidet Leerzeichen vom Anfang der Zeichenfolge ab.
+
{{jsxref ("String.prototype.trimEnd ()")}}
+ {{jsxref ("String.prototype.trimRight ()")}
+
Schneidet Leerzeichen vom Ende der Zeichenfolge ab.
+
{{jsxref ("String.prototype.valueOf ()")}}
+
Gibt den Grundwert des angegebenen Objekts zurück. Überschreibt die Methode {{jsxref ("Object.prototype.valueOf ()")}}.
+
{{jsxref ("String.prototype. @@ iterator ()", "String.prototype [@@ iterator] ()")}}
+
Gibt ein neues IteratorObjekt zurück, das die Codepunkte eines String-Werts durchläuft und jeden Codepunkt als String-Wert zurückgibt.
+
+ +

HTML-Wrapper-Methoden

+ +

Diese Methoden sind nur eingeschränkt einsetzbar, da sie nur einen Teil der verfügbaren HTML-Tags und -Attribute bereitstellen.

+ +
+
{{jsxref ("String.prototype.anchor ()")}} {{deprecated_inline}}
+
{{htmlattrxref ("name", "a", "<a name=\"name\">")}} (Hypertext-Ziel)
+
{{jsxref ("String.prototype.big ()")}} {{deprecated_inline}}
+
{{HTMLElement ("big")}}
+
{{jsxref ("String.prototype.blink ()")}} {{deprecated_inline}}
+
{{HTMLElement ("blinken")}}
+
{{jsxref ("String.prototype.bold ()")}} {{deprecated_inline}}
+
{{HTMLElement ("b")}}
+
{{jsxref ("String.prototype.fixed ()")}} {{deprecated_inline}}
+
{{HTMLElement ("tt")}}
+
{{jsxref ("String.prototype.fontcolor ()")}} {{deprecated_inline}}
+
{{htmlattrxref ("color", "font", "<font color = \" color \ ">")}}
+
{{jsxref ("String.prototype.fontsize ()")}} {{deprecated_inline}}
+
{{htmlattrxref ("size", "font", "<font size = \" size \ ">")}}
+
{{jsxref ("String.prototype.italics ()")}} {{deprecated_inline}}
+
{{HTMLElement ("i")}}
+
{{jsxref ("String.prototype.link ()")}} {{deprecated_inline}}
+
{{htmlattrxref ("href", "a", "<a href=\"url\">")}} (Link zu URL)
+
{{jsxref ("String.prototype.small ()")}} {{deprecated_inline}}
+
{{HTMLElement ("small")}}
+
{{jsxref ("String.prototype.strike ()")}} {{deprecated_inline}}
+
{{HTMLElement ("strike")}}
+
{{jsxref ("String.prototype.sub ()")}} {{deprecated_inline}}
+
{{HTMLElement ("sub")}}
+
{{jsxref ("String.prototype.sup ()")}} {{deprecated_inline}}
+
{{HTMLElement ("sup")}}
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES1')}}{{Spec2('ES1')}}Anfangsdefinition.
{{SpecName('ES5.1', '#sec-15.5.3.1', 'String.prototype')}}{{Spec2('ES5.1')}}
{{SpecName('ES6', '#sec-string.prototype', 'String.prototype')}}{{Spec2('ES6')}}
{{SpecName('ESDraft', '#sec-string.prototype', 'String.prototype')}}{{Spec2('ESDraft')}}
+ +

Browser-Kompatibilität

+ + + +

{{Compat("javascript.builtins.String.prototype")}}

+ +

Sieh auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/raw/index.html b/files/de/web/javascript/reference/global_objects/string/raw/index.html new file mode 100644 index 0000000000..4405b1b72d --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/raw/index.html @@ -0,0 +1,160 @@ +--- +title: String.raw() +slug: Web/JavaScript/Reference/Global_Objects/String/raw +tags: + - ECMAScript 2015 + - JavaScript + - Method + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/raw +--- +
{{JSRef}}
+ +
Die statische String.raw() Methode ist eine tag Funktion für template literale ähnlich dem r Präfix in Python oder dem @ Präfix in C# für String Literale (es gibt jedoch einen Unterschied: siehe in der Beschreibung dieses Issues). Es wird verwendet um rohen, unveränderten Text zu verwenden.
+ +
 
+ +

Syntax

+ +
String.raw(callSite, ...substitutions)
+String.raw`templateString`
+
+ +

Parameter

+ +
+
callSite
+
Sauber formatiertes template call object, wie { raw: 'string' }.
+
...substitutions
+
Enthält Substitutionswerte.
+
templateString
+
Ein template string, optional mit Substitutionen (${...}).
+
+ +

Rückgabewerte

+ +

Einen rohen, unveränderbaren String des template Strings.

+ +

Auftretende Errors

+ +
+
{{jsxref("TypeError")}}
+
Ein {{jsxref("TypeError")}}  wird ausgeworfen wenn das erste Argument nicht sauber formatiert ist.
+
+ +

Beschreibung

+ +

Meistens wird String.raw() mit template strings (Vorlagen-Zeichenketten) benutzt. Die erste oben beschriebene Syntax wird kaum benutzt weil die JavaScript engine die Argumente richtig aufrufen wird so wie bei anderen tag Funktionen.

+ +

String.raw() ist die einzige built-in tag function für template strings; Sie funktioniert wie eine default template function und führt concatenation (Verbindung mehrerer Strings zu einem) aus. Man kann sie sogar mit JS code neu schreiben.

+ +

Beispiele

+ +

Verwendung von String.raw()

+ +
String.raw`Hi\n${2+3}!`;
+// 'Hi\\n5!', das Zeichen nach 'Hi' ist kein newline (Zeilenumbruch) Zeichen,
+// '\' und 'n' sind zwei Zeichen.
+
+String.raw`Hi\u000A!`;
+// 'Hi\\u000A!', hier genauso, diesmal bekommen wir folgende Zeichen zurrück:
+//  \, u, 0, 0, 0, A, 6
+// Alle Typen von escape characters (besondere Steuerzeichen) sind ineffektiv
+// Backslashes werden unverändert ausgegeben.
+// Man kann dies prüfen indem man die .length property des strings abfragt
+console.log( String.raw`Hi\u000A!`.length ) // gibt 9 zurrück
+console.log( "Hi\u000A!".length ) // gibt 4 zurrück
+
+
+let name = 'Bob';
+String.raw`Hi\n${name}!`;
+// 'Hi\\nBob!', Substitutionen werden bearbeitet.
+
+// Normalerweise ruft man  String.raw() nicht als function auf aber man kann
+//folgendes:
+String.raw({ raw: 'test' }, 0, 1, 2);
+// 't0e1s2t'
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES2015', '#sec-string.raw', 'String.raw')}}{{Spec2('ES2015')}}Initiale Definition.
{{SpecName('ESDraft', '#sec-string.raw', 'String.raw')}}{{Spec2('ESDraft')}} 
+ +

Browserkompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support41{{CompatGeckoDesktop("34")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}41{{CompatGeckoMobile("34")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

See also

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/repeat/index.html b/files/de/web/javascript/reference/global_objects/string/repeat/index.html new file mode 100644 index 0000000000..6008654521 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/repeat/index.html @@ -0,0 +1,286 @@ +--- +title: String.prototype.repeat() +slug: Web/JavaScript/Reference/Global_Objects/String/repeat +tags: + - ECMAScript 2015 + - JavaScript + - Méthode + - Prototype + - Referenz + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/repeat +--- +
{{JSRef}}
+ +

Die repeat()-Funktion erzeugt und gibt eine Zeichenkette zurück, die die spezifizierte Anzahl von Kopien der angegebenen Zeichenkette aneinandergereiht enthält.

+ +

Syntax

+ +
str.repeat(Anzahl);
+
+ +

Parameter

+ +
+
Anzahl
+
Eine Zahl zwischen 0 und +∞: [0, +∞), die die Anzahl Kopien der Ursprungszeichenkette in der neu erzeugten Zeichenkette definiert.
+
+ +

Rückgabeergebnis

+ +

Eine neue Zeichenkette mit der angegebenen Anzahl an Kopien der vorgegebenen Zeichenkette.

+ +

Ausnahmen

+ + + +

Beispiele

+ +
'abc'.repeat(-1);   // Parameterfehler
+'abc'.repeat(0);    // ''
+'abc'.repeat(1);    // 'abc'
+'abc'.repeat(2);    // 'abcabc'
+'abc'.repeat(3.5);  // 'abcabcabc' (Anzahl wird in einen ganzzahligen Integer umgewandelt)
+'abc'.repeat(1/0);  // Parameterfehler
+
+({ toString: () => 'abc', repeat: String.prototype.repeat }).repeat(2);
+// 'abcabc' (repeat() ist eine generische Methode)
+
+ +

Polyfill

+ +

Diese Funktion wurde zur ECMAScript 2015 Spezifikation hinzugefügt und steht unter Umständen noch nicht in allen JavaScript-Implementierungen zur Verfügung. Bedarfsweise können Sie die Methode String.prototype.repeat() durch folgenden Code zur Verfügung stellen:

+ +
if (!String.prototype.repeat) {
+  String.prototype.repeat = function(count) {
+    'use strict';
+    if (this == null) {
+      throw new TypeError('can\'t convert ' + this + ' to object');
+    }
+    var str = '' + this;
+    count = +count;
+    if (count != count) {
+      count = 0;
+    }
+    if (count < 0) {
+      throw new RangeError('repeat count must be non-negative');
+    }
+    if (count == Infinity) {
+      throw new RangeError('repeat count must be less than infinity');
+    }
+    count = Math.floor(count);
+    if (str.length == 0 || count == 0) {
+      return '';
+    }
+    // Ensuring count is a 31-bit integer allows us to heavily optimize the
+    // main part. But anyway, most current (August 2014) browsers can't handle
+    // strings 1 << 28 chars or longer, so:
+    if (str.length * count >= 1 << 28) {
+      throw new RangeError('repeat count must not overflow maximum string size');
+    }
+    var rpt = '';
+    for (var i = 0; i < count; i++) {
+      rpt += str;
+    }
+    return rpt;
+  }
+}
+
+ +

Polyfill ES5

+ +
//#es5
+'use strict';
+(function(win){
+ var typeOf=(function(w){var f=function f(x){return typeof(x)},o=w.Symbol,p;if(o && typeof(o)==='function' && typeof(o.iterator)==='symbol'){p=o.prototype;f=function(x){return x && x.constructor===o && x!==p?'symbol':typeof x}};return f})(win),
+ exist=function(o,p,t){return p in o && typeOf(o[p])===t};
+ (function(w){
+    var o=w.String.prototype;
+    if(!exist(o,'repeat','function')){o.repeat=(function(A,E){return function(n){var i=n>>0,s=this,l=s.length,j;if(i===0||l<1){s=''}else{j=268435456;if(i<0||i>=j||i*l>j){throw new RE('Invalidcountvalue')}else if(i>0){s=A(++i).join(s)}};return s}})(w.Array,w.RangeError)};
+ })(win);
+})(window);
+
+//test:
+console.clear();
+console.log(
+'abc'.repeat(false),//''
+'abc'.repeat({}),//''
+'abc'.repeat([]),//''
+'abc'.repeat(['']),//''
+'abc'.repeat([0]),//''
+'abc'.repeat([0,1]),//''
+'abc'.repeat([1,1]),//''
+'abc'.repeat(0),//''
+'abc'.repeat(.6),//''
+'abc'.repeat(true),//'abc'
+'abc'.repeat(1),//'abc'
+'abc'.repeat(2),//'abcabc'
+'abc'.repeat([2]),//'abcabc'
+'abc'.repeat(3.5),//'abcabcabc'
+''.repeat(2)//''
+);
+console.log(
+'abc'.repeat(-Infinity),//RangeError: Invalid count value
+'abc'.repeat(Infinity),//RangeError: Invalid count value
+'abc'.repeat(1/0),//RangeError: Invalid count value
+'abc'.repeat(-1)//RangeError: Invalid count value
+);
+
+/*
+es5 src:
+'use strict';
+(function(win){
+
+ var typeOf=(function(w){var f=function f(x){return typeof(x)},o=w.Symbol,p;if(o && typeof(o)==='function' && typeof(o.iterator)==='symbol'){p=o.prototype;f=function(x){return x && x.constructor===o && x!==p?'symbol':typeof x}};return f})(win),
+ exist=function(o,p,t){return p in o && typeOf(o[p])===t};
+
+ (function(w){
+    var o=w.String.prototype;
+    if(!exist(o,'repeat','function')){
+        o.repeat=(function(A,E){
+            return function(n){
+                var i=n>>0,s=this,l=s.length,j;
+                if(i===0||l<1){s=''}else{
+                    j=268435456;
+                    if(i<0||i>=j||i*l>j){throw new RE('Invalidcountvalue')}else if(i>0){s=A(++i).join(s)}
+                };
+                return s
+            };
+        })(w.Array,w.RangeError);
+    };
+    //..
+ })(win);
+
+})(window);
+*/
+
+ +

Polyfill ES6

+ +
//#es6
+
+(w=>{
+
+    const typeOf=(o=>{let f=x=>typeof x;if(o && 'function'===typeof o){const s='symbol';if(s===typeof o.iterator){const p=o.prototype;f=x=>x && x.constructor===o && x!==p?s:typeof x}};return f})(w.Symbol),
+
+    exist=(o,p,t)=>p in o && typeOf(o[p])===t;
+
+    (o=>{
+
+        if(!exist(o,'repeat','function')){const A=w.Array,E=w.RangeError;o.repeat=function(n){var i=n>>0,s='';if(i!==0){let t=this;const l=t.length;if(l!==0){if(i<0||i>=(t=268435456)||i*l>t){throw new E('Invalid count value')}else if(i>0){s=A(++i).join(t)}}};return s}};
+
+    })(w.String.prototype);
+
+})(window);
+
+/*
+
+es6 src:
+
+(w=>{
+
+    const typeOf=(o=>{let f=x=>typeof x;if(o && 'function'===typeof o){const s='symbol';if(s===typeof o.iterator){const p=o.prototype;f=x=>x && x.constructor===o && x!==p?s:typeof x}};return f})(w.Symbol),
+
+    exist=(o,p,t)=>p in o && typeOf(o[p])===t;
+
+
+    (o=>{
+
+        if(!exist(o,'repeat','function')){
+
+            const A=w.Array;
+
+            o.repeat=function(n){var i=n>>0,s='';if(i!==0){let t=this;const l=t.length;if(l!==0){if(i<0||i>=(t=268435456)||i*l>t){throw new RangeError('Invalid count value')}else if(i>0){s=A(++i).join(t)}}};return s};
+
+        };
+
+        //..
+
+    })(w.String.prototype);
+
+
+})(window);
+
+*/
+
+
+//test:
+
+console.clear();
+
+console.log(
+
+'abc'.repeat(false),//''
+
+'abc'.repeat({}),//''
+
+'abc'.repeat([]),//''
+
+'abc'.repeat(['']),//''
+
+'abc'.repeat([0]),//''
+
+'abc'.repeat([0,1]),//''
+
+'abc'.repeat([1,1]),//''
+
+'abc'.repeat(0),//''
+
+'abc'.repeat(.6),//''
+
+'abc'.repeat(true),//'abc'
+
+'abc'.repeat(1),//'abc'
+
+'abc'.repeat(2),//'abcabc'
+
+'abc'.repeat([2]),//'abcabc'
+
+'abc'.repeat(3.5),//'abcabcabc'
+
+''.repeat(2)//''
+
+);
+
+console.log(
+
+'abc'.repeat(-Infinity),//RangeError: Invalid count value
+
+'abc'.repeat(Infinity),//RangeError: Invalid count value
+
+'abc'.repeat(1/0),//RangeError: Invalid count value
+
+'abc'.repeat(-1)//RangeError: Invalid count value
+
+);
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES2015', '#sec-string.prototype.repeat', 'String.prototype.repeat')}}{{Spec2('ES2015')}}Erste Definition.
{{SpecName('ESDraft', '#sec-string.prototype.repeat', 'String.prototype.repeat')}}{{Spec2('ESDraft')}} 
+ +

Browserkompatibilität

+ + + +

{{Compat("javascript.builtins.String.repeat")}}

diff --git a/files/de/web/javascript/reference/global_objects/string/replace/index.html b/files/de/web/javascript/reference/global_objects/string/replace/index.html new file mode 100644 index 0000000000..c375d3d1f6 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/replace/index.html @@ -0,0 +1,344 @@ +--- +title: String.prototype.replace() +slug: Web/JavaScript/Reference/Global_Objects/String/replace +tags: + - Expressions + - JavaScript + - Method + - Prototype + - Reference + - Regular + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/replace +--- +

{{JSRef}}
+ Die replace()-Methode gibt eine neue Zeichenkette zurück, in der einige oder alle Übereinstimmungen mit einem Muster durch einen Ersatz ausgetauscht wurden. Das Muster kann eine Zeichenkette oder eine RegExp sein, als Ersatz dienen eine Zeichenkette oder eine Funktion, welche für jede Übereinstimmung aufgerufen wird.

+ +

Syntax

+ +
str.replace(regexp|substr, newSubStr|function);
+ +

Parameter

+ +
+
regexp
+
Ein {{jsxref("Global_Objects/RegExp", "RegExp")}}-Objekt. Die Übereinstimmung wird durch den Rückgabewert aus Parameter #2 ersetzt.
+
+ +
+
substr
+
Eine {{jsxref("Global_Objects/String", "Zeichenkette")}}, welche durch newSubStr ersetzt werden soll. Nur das erste Vorkommen wird ersetzt.
+
+ +
+
newSubStr
+
Die {{jsxref("Global_Objects/String", "Zeichenkette")}}, welche den Substring aus Parameter #1 ersetzt. Eine Anzahl spezieller Ersetzungsmuster wird unterstützt, siehe den "Eine Zeichenkette als Parameter angeben"-Abschnitt weiter unten.
+
+ +
+
function
+
Eine Funktion, welche aufgerufen wird, um den neuen Substring zu erzeugen, der an Stelle des gefundenen Substrings aus Parameter #1 stehen soll. Die Argumente für diese Funktion werden im "Eine Funktion als Parameter angeben"-Abschnitt unten erläutert.
+
+ +

Rückgabe

+ +

Eine neue Zeichenkette, in der einige oder alle Übereinstimmungen mit einem Muster durch einen Ersatz ausgetauscht wurden.

+ +

Beschreibung

+ +

Diese Methode ändert nicht das String-Objekt, auf welchem sie aufgerufen wird. Sie gibt lediglich einen neuen String zurück.

+ +

Um ein globales Suchen und Ersetzen durchzuführen, setzen Sie den g-Umschalter im Regulären Ausdruck.

+ +

Eine Zeichenkette als Parameter angeben

+ +

Die Ersatzzeichenkette kann folgende spezielle Ersetzungsmuster beinhalten:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PatternInserts
$$Fügt ein "$" ein.
$&Fügt den gefundenen Substring ein.
$`Fügt den Stringteil vor dem gefundenen Substring ein.
$'Fügt den Stringteil nach dem gefundenen Substring ein.
$nMit n als nicht negative ganze Zahl kleiner als 100 wird der nte eingeklammerte Submatch-String eingefügt, der im ersten Argument in der RegExp angegeben wurde.
+ +

Eine Funktion als Parameter angeben

+ +

Sie können eine Funktion als zweiten Parameter angeben. In diesem Fall wird diese Funktion aufgerufen, nachdem die Suche ausgeführt wurde. Der Rückgabewert der Funktion wird als Ersatz eingesetzt. (Anmerkung: Die oben genannten speziellen Ersetzungsmuster werden in diesem Fall nicht beachtet.) Bedenken Sie, dass die Funktion für jede Übereinstimmung erneut aufgerufen wird, wenn der reguläre Ausdruck im ersten Parameter den global-Flag gesetzt hat.

+ +

Die Argumente dieser Funktion lauten wie folgt:

+ + + + + + + + + + + + + + + + + + + + + + + + +
Möglicher NameGelieferter Wert
matchDer gefundene Substring. (Entspricht $& oben.)
p1, p2, ...Der nth eingeklammerte Submatch-String, fall im ersten Argument ein RegExp-Objekt angegeben wurde. (Entspricht $1, $2, etc. oben.) Wurde zum Beispiel /(\a+)(\b+)/ angegeben, so ist p1 die Übereinstimmung für \a+, und p2 für \b+.
offsetDie Position, an welcher der gefundene Substring innerhalb der gesamten Zeichenkette gefunden wurde. War zum Beispiel die gesamte Zeichenkette "abcd" und der gefundene Substring "bc", dann wäre das Argument 1.)
stringDie gesamte Zeichenkette, welche durchsucht wird.
+ +

(Die genaue Anzahl der Argumente hängt davon ab, ob das erste Argument eine RegExp war und wieviele eingeklammerte Submatches in diesem Fall angegeben wurden.)

+ +

Das folgende Beispiel wird newString auf "abc - 12345 - #$*%" setzen:

+ +
function replacer(match, p1, p2, p3, offset, string){
+  // p1 is nondigits, p2 digits, and p3 non-alphanumerics
+  return [p1, p2, p3].join(' - ');
+}
+newString = "abc12345#$*%".replace(/([^\d]*)(\d*)([^\w]*)/, replacer);
+
+ +

Beispiele

+ +

Beispiel: Definieren des regulären Ausdrucks in replace

+ +

Globales Ersetzen kann nur mit einem regulären Ausdruck durchgeführt werden. Im folgenden Beispiel wird der reguläre Ausdruck in replace definiert und beinhaltet den Schalter ignore case.

+ +
var str = "Twas the night before Xmas...";
+var newstr = str.replace(/xmas/i, "Christmas");
+print(newstr);
+
+ +

Dies erzeugt die Ausgabe "Twas the night before Christmas..."

+ +

Beispiel: Nutzung von global und ignore mit replace

+ +

Das nachfolgende Beispiel enthält einen regulären Ausdruck, der sowohl das global als auch das ignore Flag gesetzt hat. Dadurch wird von replace jedes Vorkommnis von 'apples' in der Zeichenkette durch 'oranges' ersetzt.

+ +
var re = /apples/gi;
+var str = "Apples are round, and apples are juicy.";
+var newstr = str.replace(re, "oranges");
+print(newstr);
+
+ +

Dies erzeugt die Ausgabe "oranges are round, and oranges are juicy."

+ +

Beispiel: Vertausche Wörter in Strings

+ +

Im folgenden Skript werden die Wörter in dem String getauscht. Für die Vertauschung im Text nutzt das Skript die Ersetzungspatterns $1 und $2.

+ +
var re = /(\w+)\s(\w+)/;
+var str = "John Smith";
+var newstr = str.replace(re, "$2, $1");
+print(newstr);
+
+ +

Die Ausgabe ist: "Smith, John".

+ +

Beispiel: Nutzung von Inline-Funktionen, die die erkannten Zeichen modifizieren

+ +

In diesem Beispiel werden alle Großbuchstaben durch einen Bindestrich und den entsprechenden Kleinbuchstaben ersetzt. Der wichtige Punkt in dem Beispiel ist, dass der Additions-Operator (Konkatination) vor dem Zurückgeben der neuen Zeichenkette erfolgen muss.

+ +

Die Ersetzungsfunktion bekommt das erkannte Muster als Parameter übergeben und benutzt diesen, um den Buchstaben zu transformieren und ihn mit dem Bindestrich zu verbinden. Zum Schluss wird das Ergebnis zum Ersetzen zurückgegeben.

+ +
function styleHyphenFormat(propertyName) {
+  function upperToHyphenLower(match) {
+    return '-' + match.toLowerCase();
+  }
+  return propertyName.replace(/[A-Z]/g, upperToHyphenLower);
+}
+
+ +

Gegeben styleHyphenFormat('borderTop'), gibt 'border-top' zurück.

+ +

Weil das Ergebnis transformiert werden soll, bevor die finale Ersetzung durchgeführt wird, muss eine Funktion eingesetzt werden. Dieses erzwingt die Ausführung von toLowerCase(). Wenn man das gleiche versucht ohne eine Funktion zu benutzen, wird die toLowerCase() Methode ohne Wirkung sein.

+ +
var newString = propertyName.replace(/[A-Z]/g, '-' + '$&'.toLowerCase());  // won't work
+
+ +

Dieses ist weil '$&'.toLowerCase() ausgeführt wird, bevor der String als Pattern genutzt wird.

+ +

Beispiel: Grad Fahrenheit in Celsius-Grad umwandeln

+ +

Das folgende Beispiel ersetzt einen Wert in Grad Fahrenheit durch den entsprechenden Celsius-Wert. Der Fahrenheitwert sollte eine Nummer sein, die mit einem F endet. Die Funktion gibt eine Celsius-Temperatur mit der Endung C aus. Ist zum Beispiel der Eingabewert 212F, so gibt die Funktion 100C zurück. Ist die Nummer 0F, so wird -17,77777777777778C zurück gegeben.

+ +

Der reguläre Ausdruck test prüft jede Nummer, die mit F endet. Die Nummer in Grad Fahrenheit ist durch den zweiten Funktionsparameter, p1, ansprechbar. Die Funktion setzt den Celsiuswert basierend auf dem Fahrenheitwert in einer Zeichenkette in der f2c-Funktion. f2c gibt dann den Celsiuswert zurück. Diese Funktion ähnelt dem s///e-Flag in Perl.

+ +
function f2c(x) {
+  function convert(str, p1, offset, s) {
+    return ((p1-32) * 5/9) + "C";
+  }
+  var s = String(x);
+  var test = /(\d+(?:\.\d*)?)F\b/g;
+  return s.replace(test, convert);
+}
+
+ +

Beispiel: Verwenden einer inline-Funktion mit einem regulärem Ausdruck um Schleifen zu vermeiden

+ +

Das folgende Beispiel nimmt eine Zeichenkettenmuster und konvertiert es in ein Array von Objekten.

+ +

Eingabe:
+ Eine Zeichenkette, die aus den Zeichen x, - und _ besteht

+ +
x-x_
+x---x---x---x---
+x-xxx-xx-x-
+x_x_x___x___x___
+ +
Ausgabe:
+ +
Ein Array mit Objekten. Ein 'x' zeigt einen 'an'-Status an, ein '-' (Bindestrich) symbolisiert einen 'aus'-Status und ein '_' (Unterstrich) gibt die Länge des 'an'-Status an.
+ +
[
+  { on: true, length: 1 },
+  { on: false, length: 1 },
+  { on: true, length: 2 }
+  ...
+]
+ +
Ausschnitt:
+ +
+
var str = 'x-x_';
+var retArr = [];
+str.replace(/(x_*)|(-)/g, function(match, p1, p2){
+  if(p1) retArr.push({ on: true, length: p1.length });
+  if(p2) retArr.push({ on: false, length: 1 });
+});
+
+console.log(retArr);
+
+ +
Der Ausschnitt generiert ein Array mit drei Objekten im gewünschten Format, ohne eine Schleife zu verwenden.
+ +
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES3')}}{{Spec2('ES3')}}Initiale Definition.
+ Implementiert in JavaScript 1.2
{{SpecName('ES5.1', '#sec-15.5.4.11', 'String.prototype.replace')}}{{Spec2('ES5.1')}}
{{SpecName('ES6', '#sec-string.prototype.replace', 'String.prototype.replace')}}{{Spec2('ES6')}}
{{SpecName('ESDraft', '#sec-string.prototype.replace', 'String.prototype.replace')}}{{Spec2('ESDraft')}}
+ +

Browserkompatibilität

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
EigenschaftChromeFirefox (Gecko)Internet ExplorerOperaSafari
Grundlegende Unterstützung{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Grundlegende Unterstützung{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}
+
+ +

Firefox-spezifische Bemerkungen

+ + + +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/slice/index.html b/files/de/web/javascript/reference/global_objects/string/slice/index.html new file mode 100644 index 0000000000..d30b18e21f --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/slice/index.html @@ -0,0 +1,152 @@ +--- +title: String.prototype.slice() +slug: Web/JavaScript/Reference/Global_Objects/String/slice +translation_of: Web/JavaScript/Reference/Global_Objects/String/slice +--- +
{{JSRef}}
+ +

Die slice() Methode extrahiert einen Teilbereich eines Strings und gibt einen neuen String zurück.

+ +

Syntax

+ +
str.slice(AnfangIndex[, EndIndex])
+ +

Parameters

+ +
+
AnfangIndex
+
Der nullbasierte Index von welchem mit der Extraktion begonnen wird. Wenn dieser negativ ist, wird er als strLength + AnfangIndex, wobei strLength die länge des Strings darstellt, (bspw., wenn AnfangIndex  -3 ist, wird es als strLength - 3 gewertet). Wenn beginIndex größer oder gleich length des Strings ist, gibt slice() einen leeren String zurück.
+
EndIndex
+
Optional. Der nullbasierte Index vor welchem  die Extraktion beendet wird. Der Charakter an diesem Index wird nicht mit einbezogen. Wenn EndIndex ausgelassen wird, extrahiert slice() bis zum Ende des Strings. Wenn EndIndex negativ ist, wird es wie strLength + EndIndex gewertet, wobei strLength sich auf die Länge des Strings bezieht (z.B.: wenn EndIndex  -3 ist, wird es gewertet wie strLength - 3).
+
+ +

Return value

+ +

Ein neuer String, welcher die extrahierte Sektion des Strings enthält.

+ +

Beschreibung

+ +

slice() extrahiert den Text eines Strings und gibt einen neuen zurück. Änderungen im einen String wirken sich nicht auf den anderen String aus.

+ +

slice() extrahiert bis, aber nicht einschließlich, EndIndex. str.slice(1, 4) extrahiert den zweiten Charakter bis zum vierten  (Character mit den Indexen 1, 2, und 3).

+ +

Als Beispiel, str.slice(2, -1) extrahiert den dritten Charakter bis zum zweiten, bis zum letzten Charakter im String.

+ +

Beispiele

+ +

Benutzen von slice() um einen neuen String zu erzeugen

+ +

Das folgende Beispiel benutzt slice() um einen neuen String zu erzeugen.

+ +
var str1 = 'The morning is upon us.', // the length of str1 is 23.
+    str2 = str1.slice(1, 8),
+    str3 = str1.slice(4, -2),
+    str4 = str1.slice(12),
+    str5 = str1.slice(30);
+console.log(str2); // OUTPUT: he morn
+console.log(str3); // OUTPUT: morning is upon u
+console.log(str4); // OUTPUT: is upon us.
+console.log(str5); // OUTPUT: ""
+
+ +

Benutzen von slice() mit negativen Indexen

+ +

Das folgende Beispiel benutzt slice() mit negativen Indexen.

+ +
var str = 'The morning is upon us.';
+str.slice(-3);     // returns 'us.'
+str.slice(-3, -1); // returns 'us'
+str.slice(0, -1);  // returns 'The morning is upon us'
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES3')}}{{Spec2('ES3')}}Initiale Definition. Implementiert in JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.5.4.13', 'String.prototype.slice')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.slice', 'String.prototype.slice')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.prototype.slice', 'String.prototype.slice')}}{{Spec2('ESDraft')}} 
+ +

Browser kompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

See also

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/split/index.html b/files/de/web/javascript/reference/global_objects/string/split/index.html new file mode 100644 index 0000000000..cfea09cc76 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/split/index.html @@ -0,0 +1,212 @@ +--- +title: String.prototype.split() +slug: Web/JavaScript/Reference/Global_Objects/String/split +translation_of: Web/JavaScript/Reference/Global_Objects/String/split +--- +
{{JSRef}}
+ +

Die split() Methode teilt ein {{jsxref("String")}} Objekt in ein Array von Strings auf, indem der String in Teilstrings zerteilt wird, wobei ein angegebenes Trennzeichen verwendet wird, um zu bestimmen, wo die Aufteilung erfolgen soll.

+ +

{{EmbedInteractiveExample("pages/js/string-split.html")}}

+ +

Syntax

+ +
str.split([separator[, limit]])
+ +
+

Achtung: Wenn leerer ein String ("") als Trennzeichen verwendet wird, wird der String nicht zwischen jedem vom Benutzer wahrgenommenen Zeichen (Graphem-Cluster) oder zwischen jedem Unicode-Zeichen (Codepoint) aufgeteilt, sondern zwischen jeder UTF-16-Codeeinheit. Dadurch werden Ersatzpaare (surrogate pairs) zerstört. Siehe auch How do you get a string to a character array in JavaScript? auf Stack Overflow.

+
+ +

Parameter

+ +
+
separator {{optional_inline}}
+
Ein String, der die Punkte angibt, an denen jede Aufteilung erfolgen soll. separator wird als Zeichenfolge oder als {{jsxref("Global_Objects/RegExp", "regulärer Ausdruck", "", 1)}} behandelt. Wenn ein Nur-Text separator mehr als ein Zeichen enthält, muss der gesamte String gefunden werden, damit eine Trennung erfolgt. Wenn separator nicht angegeben wird oder in str nicht vorkommt, enthält das zurückgegebene Array ein Element, das den gesamten String enthält. Wenn separator ein leerer String ist, wird jedes Zeichen von str in ein Array-Element umgewandelt.
+
limit {{optional_inline}}
+
Ganzzahl, die ein Limit für die Anzahl der zu findenden Splits angibt. Wenn dieser Parameter angegeben wird, teilt die split() Methode die Zeichenfolge bei jedem Vorkommen des angegebenen separator auf, stoppt jedoch, nachdem die Anzahl von limit erreicht wurde. Es können immer noch weniger Einträge als limit enthalten sein, wenn das Ende des Strings erreicht wurde, bevor das angegebene Limit erreicht wird. Der übrig gebliebene Text wird im neuen Array nicht enthalten sein.
+
+ +

Rückgabewert

+ +

Ein {{jsxref("Array")}} mit Strings, welcher an jedem Punkt aufgeteilt wurde, an dem das Trennzeichen in der angegebenen Zeichenfolge aufgetreten ist.

+ +

Beschreibung

+ +

Wenn gefunden, wird separator aus dem String entfernt und die Teilstrings werden in einem Array zurückgegeben. Wenn separator nicht gefunden oder weggelassen wird, enthält das Array ein Element, das aus dem gesamten String besteht. Wenn separator ein leerer String ist, wird str in ein Array aus Zeichen umgewandelt. Wenn separator am Anfang, Ende oder Anfang und Ende eines Strings gefunden wird, beginnt, endet oder beginnt und endet das Array mit einem leeren String. Besteht ein String daher nur aus einem einzigen Vorkommnis von separator besteht, besteht das Array also aus zwei leeren Strings.

+ +

Wenn separator ein regulärer Ausdruck ist, der runde Klammern enthält, werden die Ergebnisse (einschließlich etwaiger undefinierter Ergebnisse) der Klammern bei jeder Übereinstimmung von separator in das ausgegebene Array eingefügt.

+ +
+

Hinweis: Wenn separator ein Array ist, wird das Array in einen String umgewandelt und als Trennzeichen verwendet.

+
+ +
+

Hinweis: Wenn der String leer ist, gibt split() ein Array zurück, das einen leeren String anstelle eines leeren Arrays enthält. Wenn sowohl der String als auch das Trennzeichen leere Zeichenfolgen sind, wird ein leeres Array zurückgegeben.

+
+ +

Beispiele

+ +

Verwendung von split()

+ +

Im folgenden Beispiel wird eine Funktion definiert, die einen String mithilfe des angegebenen Trennzeichens in ein Array aus Strings aufteilt. Nach dem Aufteilen des Strings protokolliert die Funktion Meldungen, die den ursprüngliche String angeben (vor der Aufteilung), das verwendete Trennzeichen, die Anzahl der Elemente im Array und die einzelnen Arrayelemente.

+ +
function splitString(stringToSplit, separator) {
+  var arrayOfStrings = stringToSplit.split(separator);
+
+  console.log('The original string is: "' + stringToSplit + '"');
+  console.log('The separator is: "' + separator + '"');
+  console.log('The array has ' + arrayOfStrings.length + ' elements: ' + arrayOfStrings.join(' / '));
+}
+
+var tempestString = 'Oh brave new world that has such people in it.';
+var monthString = 'Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec';
+
+var space = ' ';
+var comma = ',';
+
+splitString(tempestString, space);
+splitString(tempestString);
+splitString(monthString, comma);
+ +

Das Beispiel erzeugt den folgende Ausgabe:

+ +
The original string is: "Oh brave new world that has such people in it."
+The separator is: " "
+The array has 10 elements: Oh / brave / new / world / that / has / such / people / in / it.
+
+The original string is: "Oh brave new world that has such people in it."
+The separator is: "undefined"
+The array has 1 elements: Oh brave new world that has such people in it.
+
+The original string is: "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec"
+The separator is: ","
+The array has 12 elements: Jan / Feb / Mar / Apr / May / Jun / Jul / Aug / Sep / Oct / Nov / Dec
+ +

Leerzeichen aus einem String entfernen

+ +

Im folgenden Beispiel sucht split() nach 0 oder mehr Leerzeichen, gefolgt von einem Semikolon und 0 oder mehr Leerzeichen. Wenn es sie findet, entfernt es die Leerzeichen aus dem String. nameList ist das Array, was als Ergebnis von split() zurückgegeben wird.

+ +
var names = 'Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand ';
+
+console.log(names);
+
+var re = /\s*(?:;|$)\s*/;
+var nameList = names.split(re);
+
+console.log(nameList);
+ +

Dies protokolliert zwei Zeilen. Die erste Zeile protokolliert die ursprüngliche Zeichenfolge und die zweite Zeile das resultierende Array.

+ +
Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand
+[ "Harry Trump", "Fred Barney", "Helen Rigby", "Bill Abel", "Chris Hand", "" ]
+
+ +

Eine begrenzte Anzahl von Trennungen zurückgeben

+ +

Im folgenden Beispiel sucht split() nach 0 oder mehr Leerzeichen im String und gibt die ersten 3 Treffer zurück, die es findet.

+ +
var myString = 'Hello World. How are you doing?';
+var splits = myString.split(' ', 3);
+
+console.log(splits);
+ +

Dieses Skript gibt folgendes aus:

+ +
["Hello", "World.", "How"]
+
+ +

Teilen mit einer RegExp, um Teile des Trennzeichens in das Ergebnis aufzunehmen

+ +

Wenn separator ein regulärer Ausdruck ist, der runde Klammern () enthält, werden übereinstimmende Ergebnisse in das Array aufgenommen.

+ +
var myString = 'Hello 1 word. Sentence number 2.';
+var splits = myString.split(/(\d)/);
+
+console.log(splits);
+ +

Dieses Skript gibt folgendes aus:

+ +
[ "Hello ", "1", " word. Sentence number ", "2", "." ]
+ +

 

+ +

Teilen mit einem Array als Trennzeichen

+ +

 

+ +
var myString = 'this|is|a|Test';
+var splits = myString.split(['|']);
+
+console.log(splits); //["this", "is", "a", "Test"]
+
+var myString = 'ca,bc,a,bca,bca,bc';
+
+var splits = myString.split(['a','b']);
+// myString.split(['a','b']) ist dasselbe wie myString.split(String(['a','b']))
+
+console.log(splits);  //["c", "c,", "c", "c", "c"]
+ +

Einen String mit split() umkehren

+ +
+

Dies ist keine robuste Art einen String umzukehren.

+ +
var str = 'asdfghjkl';
+var strReverse = str.split('').reverse().join(''); // 'lkjhgfdsa'
+// split() returns an array on which reverse() and join() can be applied
+
+ +

Das funktioniert nicht, wenn der String Graphem-Cluster enthält, selbst wenn ein Unicode-fähiger Split verwendet wird (verwenden Sie stattdessen bspw. esrever).

+ +
var str = 'résumé';
+var strReverse = str.split(/(?:)/u).reverse().join('');
+// => "́emuśer"
+
+ +

Bonus: Verwenden Sie sen {{jsxref("Operators/Comparison_Operators", "===", "#Identity_.2F_strict_equality_(.3D.3D.3D)")}} Operator um zu testen, ob der ursprüngliche String ein Palindrom war.

+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES3')}}{{Spec2('ES3')}}Initiale Definition. Implementiert in JavaScript 1.1.
{{SpecName('ES5.1', '#sec-15.5.4.14', 'String.prototype.split')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.split', 'String.prototype.split')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.prototype.split', 'String.prototype.split')}}{{Spec2('ESDraft')}} 
+ +

Browserkompatibilität

+ +

{{Compat("javascript.builtins.String.split")}}

+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/startswith/index.html b/files/de/web/javascript/reference/global_objects/string/startswith/index.html new file mode 100644 index 0000000000..adbb0dce44 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/startswith/index.html @@ -0,0 +1,150 @@ +--- +title: String.prototype.startsWith() +slug: Web/JavaScript/Reference/Global_Objects/String/startsWith +tags: + - ECMAScript 2015 + - JavaScript + - Method + - Prototype + - Referenz + - String + - protype +translation_of: Web/JavaScript/Reference/Global_Objects/String/startsWith +--- +
{{JSRef}}
+ +

Die startsWith()-Methode stellt fest, ob ein String mit den Zeichen eines anderen Strings beginnt, falls dies so ist, wird true, sonst wird false zurückgegeben. 

+ +
str.startsWith(searchString[, position])
+ +

Parameter

+ +
+
searchString
+
Die Zeichenfolge, nach der am Anfang des Strings gesucht wird.
+
position
+
Optional. Die Position, an der die Suche nach searchString begonnen werden soll. Der Standardwert ist 0.
+
+ +

Rückgabewert

+ +

true wenn der String mit den Zeichen aus dem übergebenen String beginnt, andernfalls false.

+ +

Beschreibung

+ +

Diese Methode dient dazu herauszufinden, ob ein String am Anfang eines anderen Strings steht. Die Methode unterscheidet Groß- und Kleinschreibung.

+ +

Beispiele

+ +

Benutzung von startsWith()

+ +
//startsWith
+var str = 'Sein oder nicht sein, das ist hier die Frage';
+
+console.log(str.startsWith('Sein oder'));      // true
+console.log(str.startsWith('nicht sein'));     // false
+console.log(str.startsWith('nicht sein', 10)); // true
+
+ +

Polyfill

+ +

Diese Methode ist Bestandteil der ECMAScript-6-Spezifikation. Dennoch kann es vorkommen, dass sie noch nicht in allen Javascript-Implementierungen vorhanden ist. Man kann ihre Funktionsweise allerdings mit folgendem Ausdruck emulieren:

+ +
if (!String.prototype.startsWith) {
+  String.prototype.startsWith = function(searchString, position) {
+    position = position || 0;
+    return this.indexOf(searchString, position) === position;
+  };
+}
+
+ +

Eine robustere und schnellerer (optimierte) Version findet sich auf GitHub, geschrieben von Mathias Bynens.

+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES2015', '#sec-string.prototype.startswith', 'String.prototype.startsWith')}}{{Spec2('ES2015')}}Initiale Definition.
{{SpecName('ESDraft', '#sec-string.prototype.startswith', 'String.prototype.startsWith')}}{{Spec2('ESDraft')}} 
+ +

Browserkompatibilität

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)EdgeInternet ExplorerOperaSafari
Basic support{{CompatChrome("41")}}{{CompatGeckoDesktop("17")}}{{CompatVersionUnknown}}{{CompatNo}}28{{CompatSafari("9")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatChrome("36")}}{{CompatGeckoMobile("17")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

 

+ +

Zu beachten ist, dass die MSDN Dokumentation für diese Methode (https://msdn.microsoft.com/en-us/library/mt146831(v=vs.94).aspx) besagt, das es nicht im Internet Explorer unterstützt wird.

+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/substr/index.html b/files/de/web/javascript/reference/global_objects/string/substr/index.html new file mode 100644 index 0000000000..354d417ea9 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/substr/index.html @@ -0,0 +1,171 @@ +--- +title: String.prototype.substr() +slug: Web/JavaScript/Reference/Global_Objects/String/substr +tags: + - JavaScript + - Method + - Prototype + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/substr +--- +
{{JSRef}}
+ +

Die Methode substr() gibt die Zeichen eines Strings in einem gegebenen Intervall zurück.

+ +

Syntax

+ +
str.substr(start[, length])
+ +

Parameter

+ +
+
start
+
Ort im String, an dem mit dem Extrahieren von Zeichen begonnen wird. Wird eine negative Zahl übergeben, wird sie als str.length - start behandelt (Wenn start z. B. -3 ist, wird es als str.length - 3 behandelt).
+
length
+
Optional. Die Anzahl der Zeichen, die extrahiert werden sollen.
+
+ +

Rückgabewert

+ +

Einen neuen String, der den extrahierten Bereich des gegebene Strings enthält. Wenn length 0 oder negativ ist, wird ein leerer String zurückgegeben.

+ +

Beschreibung

+ +

start ist ein Zeichenindex. Der Index des ersten Zeichens ist 0 und der Index des letzten Zeichens ist 1 weniger als die Länge des Strings. substr()fängt mit dem Extrahieren von Zeichen bei start an und extrahiert length Zeichen (es sei denn, es erreicht vorher das Ende des Strings, dann gibt es weniger zurück).

+ +

Wenn start positiv ist und größer gleich der Länge des Strings ist, gibt substr() einen leeren String zurück.

+ +

Wenn start negativ ist, verwendet substr() es als Zeichenindex vom Ende des Strings. Wenn start negativ ist und abs(start) größer als die Länge des Strings ist, verwendet substr() 0 als Zeichenindex. Anmerkung: Der beschriebene Umgang mit negativen Werten für start wird von Microsoft JScript nicht unterstützt.

+ +

Wenn length 0 oder negativ ist, gibt substr() einen leeren String zurück. Wenn length nicht übergeben wird, extrahiert substr() alle Zeichen bis zum Ende des Strings.

+ +

Beispiele

+ +

Verwenden von substr()

+ +
var str = 'abcdefghij';
+
+console.log('(1, 2): '   + str.substr(1, 2));   // '(1, 2): bc'
+console.log('(-3, 2): '  + str.substr(-3, 2));  // '(-3, 2): hi'
+console.log('(-3): '     + str.substr(-3));     // '(-3): hij'
+console.log('(1): '      + str.substr(1));      // '(1): bcdefghij'
+console.log('(-20, 2): ' + str.substr(-20, 2)); // '(-20, 2): ab'
+console.log('(20, 2): '  + str.substr(20, 2));  // '(20, 2): '
+
+ +

Polyfill

+ +

Microsofts JScript unterstützt keine negativen Werte für den Startindex. Der folgende Kompatibilitätscode ist ein Workaround für diesen Bug:

+ +
// Nur verwenden, wenn die substr()-Funktion nicht funktioniert
+if ('ab'.substr(-1) != 'b') {
+  /**
+   *  Einen Teilstring erhalten
+   *  @param  {integer}  start   Startindex des Teilstrings
+   *  @param  {integer}  length  Länge des Teilstrings
+   *  @return {string}
+   */
+  String.prototype.substr = function(substr) {
+    return function(start, length) {
+       // Aufruf der Originalfunktion
+       return substr.call(this,
+         // Wenn start negativ ist, berechnen wie viel start
+         // vom Anfang des Strings ist
+         start < 0 ? this.length + start : start,
+         length);
+    }
+  }(String.prototype.substr);
+}
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES3')}}{{Spec2('ES3')}}Im (informativen) Anhang B "Compatibility" definiert. Implementiert in JavaScript 1.0.
{{SpecName('ES5.1', '#sec-B.2.3', 'String.prototype.substr')}}{{Spec2('ES5.1')}}Im (informativen) Anhang B "Compatibility" definiert.
{{SpecName('ES6', '#sec-string.prototype.substr', 'String.prototype.substr')}}{{Spec2('ES6')}}Im (normativen) Anhang B "Additional ECMAScript Features for Web Browsers" definiert.
{{SpecName('ESDraft', '#sec-string.prototype.substr', 'String.prototype.substr')}}{{Spec2('ESDraft')}}Im (normativen) Anhang B "Additional ECMAScript Features for Web Browsers" definiert.
+ +

Browserkompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Grundlegende Unterstützung{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Grundlegende Unterstützung{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/substring/index.html b/files/de/web/javascript/reference/global_objects/string/substring/index.html new file mode 100644 index 0000000000..4ed1e33959 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/substring/index.html @@ -0,0 +1,199 @@ +--- +title: String.prototype.substring() +slug: Web/JavaScript/Reference/Global_Objects/String/substring +tags: + - Funktion + - JavaScript + - Method + - Methode(2) + - Méthode + - Prototype + - Reference + - Referenz + - Référence(2) + - String + - Zeichenkette +translation_of: Web/JavaScript/Reference/Global_Objects/String/substring +--- +
{{JSRef("Global_Objects", "String")}}
+ +

Definition

+ +

Die substring() Methode gibt einen Teilstring eines Strings zwischen einem Index und einem anderen, oder dem Ende der Zeichenkette zurück.

+ +

Syntax

+ +
str.substring(indexA[, indexB])
+ +

Parameter

+ +
+
indexA
+
Ein Integer zwischen 0 und der Länge der Zeichenkette, welcher das erste Zeichen des Teilstrings repräsentiert.
+
indexB
+
Optional. Ein Integer zwischen 0 und der Länge der Zeichenkette, welcher das erste nicht im Teilstring enthaltene Zeichen darstellt.
+
+ +

Beschreibung

+ +

substring() extrahiert Zeichen von indexA bis nicht einschließlich indexB. Im Detail:

+ + + +

Falls indexA größer als indexB ist, werden die Argumente vertauscht substring(); zum Beispiel, str.substring(1, 0) == str.substring(0, 1).

+ +

Beispiele

+ +

Beispiel: Benutzung von substring()

+ +

Das folgende Beispiel benutzt substring(), um Zeichen des Strings 'Mozilla' anzuzeigen:

+ +
var anyString = 'Mozilla';
+
+// Zeigt 'Moz'
+console.log(anyString.substring(0, 3));
+console.log(anyString.substring(3, 0));
+
+// Zeigt 'lla'
+console.log(anyString.substring(4, 7));
+console.log(anyString.substring(7, 4));
+
+// Zeigt 'Mozill'
+console.log(anyString.substring(0, 6));
+
+// Zeigt 'Mozilla'
+console.log(anyString.substring(0, 7));
+console.log(anyString.substring(0, 10));
+
+ +

Beispiel: Benutzung von substring() mit length Eigenschaft

+ +

Das folgende Beispiel benutzt die substring() Methode und die {{jsxref("String.length", "length")}} Eigenschaft, um die letzten Zeichen des Strings zu extrahieren. Diese Methode ist leichter zu merken, da die genauen Start- und Endparameter nicht bekannt sein müssen.

+ +
// Zeigt 'illa' - die letzten 4 Zeichen
+var anyString = 'Mozilla';
+var anyString4 = anyString.substring(anyString.length - 4);
+console.log(anyString4);
+
+// Zeigt 'zilla' - die letzten 5 Zeichen
+var anyString = 'Mozilla';
+var anyString5 = anyString.substring(anyString.length - 5);
+console.log(anyString5);
+
+ +

Beispiel: Ersetze ein Teilstring mit einem String

+ +

Das folgende Beispiel ersetzt ein Teilstring mit einem String. Es werden sowohhl einzelne Zeichen als auch Teilstrings ersetzt. Der Funktionsaufruf am Ende des Beispiel ändert die Zeichenkette 'Brave New World' in 'Brave New Web'.

+ +
// Ersetzt oldS mit newS in der Zeichenkette fullS
+function replaceString(oldS, newS, fullS) {
+  for (var i = 0; i < fullS.length; ++i) {
+    if (fullS.substring(i, i + oldS.length) == oldS) {
+      fullS = fullS.substring(0, i) + newS + fullS.substring(i + oldS.length, fullS.length);
+    }
+  }
+  return fullS;
+}
+
+replaceString('World', 'Web', 'Brave New World');
+
+ +

Beachte, dass dieses Beispiel auch in einer Endlosschleife resultieren kann, wenn oldS ein Teilstring von newS ist — zum Beispiel, falls 'World' mit 'OtherWorld' ersetzt wird. Der folgende Code zeigt ein bessere Methode Strings zu ersetzen:

+ +
function replaceString(oldS, newS, fullS) {
+  return fullS.split(oldS).join(newS);
+}
+
+ +

Der oben stehende Code zeigt ein Beispiel für die Verwendung der substring Operation. Falls Teilstrings ersetzt werden, kann in den meisten Fällen {{jsxref("String.prototype.replace()")}} verwendet werden.

+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
ECMAScript 1. Edition.StandardIn JavaScript 1.0 implementiert.
{{SpecName('ES5.1', '#sec-15.5.4.15', 'String.prototype.substring')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.substring', 'String.prototype.substring')}}{{Spec2('ES6')}} 
+ +

Browser Kompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Standard Support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Standard Support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/suchen/index.html b/files/de/web/javascript/reference/global_objects/string/suchen/index.html new file mode 100644 index 0000000000..5fb838010a --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/suchen/index.html @@ -0,0 +1,105 @@ +--- +title: String.prototype.search() +slug: Web/JavaScript/Reference/Global_Objects/String/suchen +tags: + - JavaScript + - Méthode + - Prototyp + - Referenz + - Regulärer Ausdruck + - Zeichenkette +translation_of: Web/JavaScript/Reference/Global_Objects/String/search +--- +
{{JSRef}}
+ +

Die search() methode führt eine Suche für eine Übereinstimmung von einem Regulären Ausdruck und diesem {{jsxref("String")}} Objekt.

+ +
{{EmbedInteractiveExample("pages/js/string-search.html")}}
+ + + +

Syntax

+ +
str.search(regexp)
+ +

Parameter

+ +
+
regexp
+
Ein Regulär-Ausdruck Objekt. Wenn ein nicht-RegExp Objekt obj eingereicht wird, wird es durch new RegExp(obj) zu {{jsxref("RegExp")}} konvertiert.
+
+ +

Rückgabewert

+ +

Die erste übereinstimmung zwischen dem Regulären Audruck und und der gegebenen Zeichenkette; wenn nicht gefunden, -1.

+ +

Beschreibung

+ +

Wenn du wissen willst ob ein Muster gefunden wurde, und was sein Index ist nutze search() (wenn du nur wissen willst ob es das gibt nutze die ähnliche {{jsxref("RegExp.prototype.test()", "test()")}} Methode auf dem RegExp Prototyp, der einen boolean zurückgibt); für mehr informationen (aber langsamererere Ausführung) nutze {{jsxref("String.prototype.match()", "match()")}} (ähnlich zum Ausdruck {{jsxref("RegExp.prototype.exec()", "exec()")}}).

+ +

Beispiele

+ + + +

Das folgende Beispiel durchsucht eine Zeichenkette mit 2 verschiedenen regex Objekten, um eine erfolgreiche, und unerfolgreiche Suche zu zeigen.

+ +
var str = "hey LukE";
+var re = /[A-Z]/g;
+var re2 = /[.]/g;
+console.log(str.search(re)); // gibt 4 zurück, was der Index des ersten Großbuchstaben "L" ist.
+console.log(str.search(re2)); // gibt -1 zurück kann "." nicht finden
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES3')}}{{Spec2('ES3')}}Initielle Definition. Eingeführt in JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.5.4.12', 'String.prototype.search')}}{{Spec2('ES5.1')}}
{{SpecName('ES6', '#sec-string.prototype.search', 'String.prototype.search')}}{{Spec2('ES6')}}
{{SpecName('ESDraft', '#sec-string.prototype.search', 'String.prototype.search')}}{{Spec2('ESDraft')}}
+ +

Browser Kompatibilität

+ + + +

{{Compat("javascript.builtins.String.search")}}

+ +

Gecko-spezifische Hinweise

+ + + +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/tolowercase/index.html b/files/de/web/javascript/reference/global_objects/string/tolowercase/index.html new file mode 100644 index 0000000000..f3eb4d9f68 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/tolowercase/index.html @@ -0,0 +1,79 @@ +--- +title: String.prototype.toLowerCase() +slug: Web/JavaScript/Reference/Global_Objects/String/toLowerCase +tags: + - JavaScript + - Method + - Prototype + - Referenz + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/toLowerCase +--- +
{{JSRef}}
+ +

Die toLowerCase() Methode gibt den Wert des aufrufenden Strings in Kleinbuchstaben umgewandelt zurück.

+ +

Syntax

+ +
str.toLowerCase()
+ +

Rückgabewert

+ +

Ein neuer String, der den alten String konvertiert zu Kleinbuchstaben enthält.

+ +

Beschreibung

+ +

Die toLowerCase() Methode gibt den Wert des Strings in Kleinbuchstaben umgewandelt zurück. toLowerCase() hat keine Auswirkungen auf den Wert des Strings str.

+ +

Beispiele

+ +

Benutzung von toLowerCase()

+ +
console.log('ALPHABET'.toLowerCase()); // 'alphabet'
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES1')}}{{Spec2('ES1')}}Initiale Definition. Implementiert in JavaScript 1.0.
{{SpecName('ES5.1', '#sec-15.5.4.16', 'String.prototype.toLowerCase')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.tolowercase', 'String.prototype.toLowerCase')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.prototype.tolowercase', 'String.prototype.toLowerCase')}}{{Spec2('ESDraft')}} 
+ +

Browserkompatibilität

+ + + +

{{Compat("javascript.builtins.String.toLowerCase")}}

+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/touppercase/index.html b/files/de/web/javascript/reference/global_objects/string/touppercase/index.html new file mode 100644 index 0000000000..c221990e73 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/touppercase/index.html @@ -0,0 +1,127 @@ +--- +title: String.prototype.toUpperCase() +slug: Web/JavaScript/Reference/Global_Objects/String/toUpperCase +tags: + - JavaScript + - Method + - Prototype + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/toUpperCase +--- +
+
{{JSRef}}
+ +

Die toUpperCase() Methode gibt den Wert des aufrufenden Strings in Großbuchstaben umgewandelt zurück.

+ +

Syntax

+ +
str.toUpperCase()
+ +

Rückgabewert

+ +

Ein neuer String, der den alten String konvertiert zu Großbuchstaben enthält.

+ +

Beschreibung

+ +

Die toUpperCase() Methode gibt den Wert des Strings in Großbuchstaben umgewandelt zurück. toUpperCase() hat keine Auswirkungen auf den Wert des Strings str.

+ +

Beispiele

+ +

Benutzung von toUpperCase()

+ +
console.log('alphabet'.toUpperCase()); // 'ALPHABET'
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES1')}}{{Spec2('ES1')}}Initiale Definition. Implementiert in JavaScript 1.0.
{{SpecName('ES5.1', '#sec-15.5.4.16', 'String.prototype.toUpperCase')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.touppercase', 'String.prototype.toUpperCase')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.prototype.touppercase', 'String.prototype.toUpperCase')}}{{Spec2('ESDraft')}} 
+ +

Browserkompatibilität

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Siehe auch

+ + +
diff --git a/files/de/web/javascript/reference/global_objects/string/trim/index.html b/files/de/web/javascript/reference/global_objects/string/trim/index.html new file mode 100644 index 0000000000..59ada93228 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/trim/index.html @@ -0,0 +1,93 @@ +--- +title: String.prototype.trim() +slug: Web/JavaScript/Reference/Global_Objects/String/Trim +tags: + - ECMAScript 5 + - JavaScript + - Method + - Prototype + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/Trim +--- +
{{JSRef}}
+ +

Die trim() Methode entfernt Leerzeichen an beiden Enden einer Zeichenfolge. Das betrifft Leerzeichen verschiedenster Art (space, tab, no-break space, etc.) und alle Zeilenumbruch einleitende Zeichen (LF, CR, etc.).

+ +

Syntax

+ +
str.trim()
+ +

Rückgabewert

+ +

Ein neuer String, der den gegebenen String ohne Whitespaces am Anfang und am Ende enthält.

+ +

Beschreibung

+ +

Die trim() Methode gibt eine Zeichenfolge ohne Leerzeichen an beiden Enden zurück. trim() beeinflusst oder verändert nicht den ursprünglichen Wert der Zeichenfolge.

+ +

Beispiele

+ +

trim() verwenden

+ +

Das folgende Beispiel zeigt die kleingeschriebene Zeichenfolge 'foo':

+ +
var orig = '   foo  ';
+console.log(orig.trim()); // 'foo'
+
+// Ein Beispiel bei dem .trim() Leerzeichen an einem Ende entfernt
+
+var orig = 'foo    ';
+console.log(orig.trim()); // 'foo'
+
+ +

Polyfill

+ +

Führe folgenden Code vor allem anderen aus um die Methode trim() zu erstellen sollte sie nativ nicht zur Verfügung stehen.

+ +
if (!String.prototype.trim) {
+  String.prototype.trim = function () {
+    return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
+  };
+}
+
+ +

Spezifikationen

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpezifikationStatusKommentar
{{SpecName('ES5.1', '#sec-15.5.4.20', 'String.prototype.trim')}}{{Spec2('ES5.1')}}Initiale Definition. Implementiert in JavaScript 1.8.1.
{{SpecName('ES6', '#sec-string.prototype.trim', 'String.prototype.trim')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.prototype.trim', 'String.prototype.trim')}}{{Spec2('ESDraft')}} 
+ +

Browserkompatibilität

+ + + +

{{Compat("javascript.builtins.String.trim")}}

+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/trimleft/index.html b/files/de/web/javascript/reference/global_objects/string/trimleft/index.html new file mode 100644 index 0000000000..db5dbd55cb --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/trimleft/index.html @@ -0,0 +1,58 @@ +--- +title: String.prototype.trimLeft() +slug: Web/JavaScript/Reference/Global_Objects/String/TrimLeft +tags: + - JavaScript + - Method + - Prototype + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/trimStart +--- +
{{JSRef}} {{non-standard_header}}
+ +

Die trimLeft() Methode entfernt Leerzeichen vom linken Ende der Zeichenkette.

+ +

Syntax

+ +
str.trimLeft()
+ +

Rückgabewert

+ +

Ein neuen String, der den alten String ohne Whitespaces auf der linken Seite beinhaltet.

+ +

Beschreibung

+ +

Die trimLeft() Methode gibt die Zeichenkette ohne Leerzeichen am linken Ende zurück. trimLeft() manipuliert nicht den Wert der Zeichenkette.

+ +

Beispiel

+ +

trimLeft() verwenden

+ +

Im folgenden Beispiel wird die Funktionalität dieser Methode dargestellt.

+ +
var str = '   foo  ';
+
+console.log(str.length);  // 8
+
+str = str.trimLeft();
+console.log(str.length);  // 5
+console.log(str);         // 'foo  '
+
+ +

Spezifikationen

+ +

Gehört keinem Standard an. Hinzugefügt in JavaScript 1.8.1.

+ +

Browserkompatibilität

+ + + +

{{Compat("javascript.builtins.String.trimLeft")}}

+ +

Siehe auch

+ + diff --git a/files/de/web/javascript/reference/global_objects/string/trimright/index.html b/files/de/web/javascript/reference/global_objects/string/trimright/index.html new file mode 100644 index 0000000000..b66e15f474 --- /dev/null +++ b/files/de/web/javascript/reference/global_objects/string/trimright/index.html @@ -0,0 +1,58 @@ +--- +title: String.prototype.trimRight() +slug: Web/JavaScript/Reference/Global_Objects/String/TrimRight +tags: + - JavaScript + - Method + - Prototype + - Reference + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/trimEnd +--- +
{{JSRef}} {{non-standard_header}}
+ +

Die trimRight() Methode entfernt Leerzeichen vom rechten Ende der Zeichenkette.

+ +

Syntax

+ +
str.trimRight()
+ +

Rückgabewert

+ +

Ein neuen String, der den alten String ohne Whitespaces auf der rechten Seite beinhaltet.

+ +

Beschreibung

+ +

Die trimRight() Methode gibt die Zeichenkette ohne Leerzeichen am rechten Ende zurück. trimRight() manipuliert nicht den Wert der Zeichenkette.

+ +

Beispiel

+ +

trimRight() verwenden

+ +

Im folgenden Beispiel wird die Funktionalität dieser Methode dargestellt.

+ +
var str = '   foo  ';
+
+console.log(str.length);  // 8
+
+str = str.trimRight();
+console.log(str.length);  // 6
+console.log(str);         // '   foo'
+
+ +

Spezifikationen

+ +

Gehört keinem Standard an. Hinzugefügt in JavaScript 1.8.1.

+ +

Browserkompatibilität

+ + + +

{{Compat("javascript.builtins.String.trimRight")}}

+ +

Siehe auch

+ + -- cgit v1.2.3-54-g00ecf