aboutsummaryrefslogtreecommitdiff
path: root/files/de/web/javascript/reference/global_objects/string/includes/index.html
blob: ee3aa6564ce11269378ad83de88596a513769299 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
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
---
<div>{{JSRef}}</div>

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

<h2 id="Syntax">Syntax</h2>

<pre class="syntaxbox"><code><var>str</var>.includes(<var>searchString</var>[, <var>position</var>])</code></pre>

<h3 id="Parameter">Parameter</h3>

<dl>
 <dt><code>searchString</code></dt>
 <dd>Ein String, der innerhalb eines anderen Strings gesucht wird.</dd>
 <dt><code>position</code></dt>
 <dd>Optional. Die Position innerhalb des besuchten Strings durch <code>searchString</code>; Standard ist 0.</dd>
</dl>

<h3 id="Wertwiedergabe">Wertwiedergabe</h3>

<p><strong><code>true</code></strong>, wenn der String den gesuchten String enthält, andernfalls <strong><code>false</code></strong>.</p>

<h2 id="Beschreibung">Beschreibung</h2>

<p>Diese Methode lässt dich feststellen, ob ein String einen anderen String beinhaltet.</p>

<h3 id="Achtung_auf_Groß-_Kleinschreibung">Achtung auf Groß-, Kleinschreibung</h3>

<p>Bei der <code>includes()</code>-Methode muss auf Groß- und Kleinschreibung geachtet werden.<br>
 Zum Beispiel gibt die folgende Darstellung <code>false</code> aus:</p>

<pre class="brush: js">'Blue Whale'.includes('blue'); // gibt false wieder
</pre>

<h2 id="Beispiele">Beispiele</h2>

<h3 id="Einsatz_von_includes">Einsatz von <code>includes()</code></h3>

<pre class="brush: js">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
</pre>

<h2 id="Polyfill">Polyfill</h2>

<p>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:</p>

<pre class="brush: js">if (!String.prototype.includes) {
  String.prototype.includes = function(search, start) {
    'use strict';
    if (typeof start !== 'number') {
      start = 0;
    }

    if (start + search.length &gt; this.length) {
      return false;
    } else {
      return this.indexOf(search, start) !== -1;
    }
  };
}

</pre>

<h2 id="Spezifikationen">Spezifikationen</h2>

<table class="standard-table">
 <tbody>
  <tr>
   <th scope="col">Spezifikationen</th>
   <th scope="col">Status</th>
   <th scope="col">Kommentar</th>
  </tr>
  <tr>
   <td>{{SpecName('ES2015', '#sec-string.prototype.includes', 'String.prototype.includes')}}</td>
   <td>{{Spec2('ES2015')}}</td>
   <td>erste Definition</td>
  </tr>
  <tr>
   <td>{{SpecName('ESDraft', '#sec-string.prototype.includes', 'String.prototype.includes')}}</td>
   <td>{{Spec2('ESDraft')}}</td>
   <td></td>
  </tr>
 </tbody>
</table>

<h2 id="Browser-Kompatibilität">Browser-Kompatibilität</h2>

<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p>

<p>{{Compat("javascript.builtins.String.includes")}}</p>

<h2 id="String.prototype.contains">String.prototype.contains</h2>

<p>In Firefox 18 - 39 hieß diese Methode <code>contains()</code>. Es wurde zu <code>includes()</code> ({{bug(1102219)}}) wegen folgender Gründe umbenannt:<br>
 <br>
 Es wurde gemeldet, dass manche Webseiten, die MooTools 1.2 nutzen mit Firefox 17 nicht mehr funktionieren. Diese Version von MooTools kontrolliert, ob <code>String.prototype.contains()</code> existiert und, wenn nicht, fügt es seine eigene Funktion hinzu.<br>
 Mit der Einführung dieser Funktion in Firefox 17 wurde das Verhalten dieser Kontrolle geändert, sodass auf MooTools <code>String.prototype.contains()</code> basierender Code funktionsunfähig wurde.<br>
 Aufgrund dessen wurde die Implementierung in Firefox 17 <a href="https://hg.mozilla.org/releases/mozilla-aurora/rev/086db97198a8">abgeschaltet </a>und <code>String.prototype.contains()</code> war in Firefox 18 nutzbar. Ermöglicht wurde dies durch die <a href="http://mootools.net/blog/2013/02/19/mootools-1-2-6-released">Veröffentlichung von MooTools Version 1.2.6.</a></p>

<p>MooTools 1.3 erzwingt die Nutzung der eigenen Version von <code>String.prototype.contains()</code>, demnach sollten Webseiten, die abhängig davon sind, weiterhin funktionieren. Beachte jedoch, dass sich die <a href="http://mootools.net/core/docs/1.3.2/Types/String#String-method:-contains">MooTools 1.3 Signatur </a>von der ECMAScript 6 Signatur für diese Methode unterscheidet.</p>

<p>Später änderte <a href="https://github.com/mootools/mootools-core/blob/master/Docs/Types/String.md#note">MooTools 1.5+ die Signatur, um sie dem ES2015 Standard anzupassen.</a></p>

<p><br>
 In Firefox 48 wurde <code>String.prototype.contains()</code> entfernt. Nutze lediglich <code>String.prototype.includes()</code>.</p>

<h2 id="Siehe_auch">Siehe auch</h2>

<ul>
 <li>{{jsxref("Array.prototype.includes()")}} {{experimental_inline}}</li>
 <li>{{jsxref("TypedArray.prototype.includes()")}} {{experimental_inline}}</li>
 <li>{{jsxref("String.prototype.indexOf()")}}</li>
 <li>{{jsxref("String.prototype.lastIndexOf()")}}</li>
 <li>{{jsxref("String.prototype.startsWith()")}}</li>
 <li>{{jsxref("String.prototype.endsWith()")}}</li>
</ul>