Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.
String.prototype.includes()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since setembro de 2015.
O métodoincludes() determina se um conjunto de caracteres pode ser encontrado dentro de outra string, retornandotrue oufalse.
In this article
Sintaxe
str.includes(searchString[, position])
Parâmetros
searchStringÉ o conjunto de caracteres que será pesquisado dentro desta string.
positionOpcional. É um número inteiro que indica por onde a busca iniciará, referente ao índice da string a ser pesquisada. O valor padrão é 0.
Valor retornado
true se o conjunto de caracteres for encontrado em algum lugar dentro da string sendo pesquisada. Do contrário, retornafalse.
Descrição
Este método permite conferir se uma string contém um determinado conjunto de caracteres.
Case-sensitivity
O métodoincludes() é case sensitive. Por exemplo, a seguinte expressão retornafalse:
"Bandeira do Brasil".includes("brasil"); // retorna falseExemplos
>Utilizandoincludes()
var str = "Ser, ou não ser, eis a questão.";console.log(str.includes("Ser")); // trueconsole.log(str.includes("questão")); // trueconsole.log(str.includes("não existe")); // falseconsole.log(str.includes("ser", 1)); // trueconsole.log(str.includes("SER")); // falseImplementação
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:
if (!String.prototype.includes) { String.prototype.includes = function () { "use strict"; return String.prototype.indexOf.apply(this, arguments) !== -1; };}Especificações
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-string.prototype.includes> |
Navegadores compatíveis
String.prototype.contains
No Firefox 18 - 39, o nome deste método eracontains(). Ele foi renomeado paraincludes() noErro do Firefox 1102219 devido ao seguinte motivo:
Foireportado que alguns websites que utilizam MooTools 1.2 não funcionavam no Firefox 17. Esta versão do MooTools verifica seString.prototype.contains() 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çãoString.prototype.contains() do MooTools parassem de funcionar. Como resultado, esta mudança foidesabilitada no Firefox 17 eString.prototype.contains() foi disponibilizada na versão seguinte, no Firefox 18.
MooTools 1.3 força sua própria versão doString.prototype.contains(), portanto websites baseados nela não devem parar de funcionar. No entanto, você deve notar quea assinatura do MooTools 1.3 e a assinatura ECMAScript 6 diferem (no segundo argumento). Posteriormente,MooTools 1.5+ mudou sua assinatura para o padrão ES6.