diff options
Diffstat (limited to 'files/pt-br/web/javascript/reference/global_objects/string/includes/index.html')
-rw-r--r-- | files/pt-br/web/javascript/reference/global_objects/string/includes/index.html | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/files/pt-br/web/javascript/reference/global_objects/string/includes/index.html b/files/pt-br/web/javascript/reference/global_objects/string/includes/index.html new file mode 100644 index 0000000000..c76b927cf3 --- /dev/null +++ b/files/pt-br/web/javascript/reference/global_objects/string/includes/index.html @@ -0,0 +1,108 @@ +--- +title: String.prototype.includes() +slug: Web/JavaScript/Reference/Global_Objects/String/includes +tags: + - ES6 + - JavaScript + - Prototipo + - Referencia + - String + - metodo +translation_of: Web/JavaScript/Reference/Global_Objects/String/includes +--- +<div>{{JSRef}}</div> + +<p>O método <strong>includes()</strong> determina se um conjunto de caracteres pode ser encontrado dentro de outra string, retornando <code>true</code> ou <code>false</code>.</p> + +<h2 id="Sintaxe">Sintaxe</h2> + +<pre class="syntaxbox notranslate"><code><var>str</var>.includes(<var>searchString</var>[, <var>position</var>])</code></pre> + +<h3 id="Parâmetros">Parâmetros</h3> + +<dl> + <dt><code>searchString</code></dt> + <dd>É o conjunto de caracteres que será pesquisado dentro desta string.</dd> + <dt><code>position</code></dt> + <dd>Opcional. É um número inteiro que indica por onde a busca iniciará, referente ao índice da string a ser pesquisada. O valor padrão é 0.</dd> +</dl> + +<h3 id="Valor_retornado">Valor retornado</h3> + +<p><code>true</code> se o conjunto de caracteres for encontrado em algum lugar dentro da string sendo pesquisada. Do contrário, retorna <code>false</code>.</p> + +<h2 id="Descrição">Descrição</h2> + +<p>Este método permite conferir se uma string contém um determinado conjunto de caracteres.</p> + +<h3 id="Case-sensitivity">Case-sensitivity</h3> + +<p>O método <code>includes()</code> é case sensitive. Por exemplo, a seguinte expressão retorna <code>false</code>:</p> + +<pre class="brush: js notranslate">'Bandeira do Brasil'.includes('brasil'); // retorna false +</pre> + +<h2 id="Exemplos">Exemplos</h2> + +<h3 id="Utilizando_includes">Utilizando <code>includes()</code></h3> + +<pre class="brush: js notranslate">var str = 'Ser, ou não ser, eis a questão.'; + +console.log(str.includes('Ser')); // true +console.log(str.includes('questão')); // true +console.log(str.includes('não existe')); // false +console.log(str.includes('ser', 1)); // true +console.log(str.includes('SER')); // false +</pre> + +<h2 id="Implementação">Implementação</h2> + +<p>Este método foi adicionado à especificação ECMAScript 6 e pode não estar disponível em todas as implementações JavaScript. No entanto, você pode facilmente implementar este método:</p> + +<pre class="brush: js notranslate">if (!String.prototype.includes) { + String.prototype.includes = function() {'use strict'; + return String.prototype.indexOf.apply(this, arguments) !== -1; + }; +} + +</pre> + +<h2 id="Especificações">Especificações</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Especificação</th> + <th scope="col">Status</th> + <th scope="col">Comentário</th> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-string.prototype.includes', 'String.prototype.includes')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>Definição inicial.</td> + </tr> + </tbody> +</table> + +<h2 id="Navegadores_compatíveis">Navegadores compatíveis</h2> + +<div>{{Compat("javascript.builtins.String.includes")}}</div> + +<h2 id="String.prototype.contains">String.prototype.contains</h2> + +<p>No Firefox 18 - 39, o nome deste método era <code>contains()</code>. Ele foi renomeado para <code>includes()</code> no {{bug(1102219)}} devido ao seguinte motivo:</p> + +<p>Foi <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=789036">reportado</a> que alguns websites que utilizam MooTools 1.2 não funcionavam no Firefox 17. Esta versão do MooTools verifica se <code>String.prototype.contains()</code> existe e, se não existir, MooTools adiciona sua própria função. Com a implementação desta função no Firefox 17, o comportamento desta validação mudou de uma forma que códigos baseados na implementação da função <code>String.prototype.contains()</code> do MooTools parassem de funcionar. Como resultado, esta mudança foi <a href="https://hg.mozilla.org/releases/mozilla-aurora/rev/086db97198a8">desabilitada</a> no Firefox 17 e <code>String.prototype.contains()</code> foi disponibilizada na versão seguinte, no Firefox 18.</p> + +<p>MooTools 1.3 força sua própria versão do <code>String.prototype.contains()</code>, portanto websites baseados nela não devem parar de funcionar. No entanto, você deve notar que <a href="http://mootools.net/core/docs/1.3.2/Types/String#String-method:-contains">a assinatura do MooTools 1.3</a> e a assinatura ECMAScript 6 diferem (no segundo argumento). Posteriormente, <a href="https://github.com/mootools/mootools-core/blob/master/Docs/Types/String.md#note">MooTools 1.5+ mudou sua assinatura para o padrão ES6.</a></p> + +<h2 id="Veja_também">Veja também</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()")}} {{experimental_inline}}</li> + <li>{{jsxref("String.prototype.endsWith()")}} {{experimental_inline}}</li> +</ul> |