Este exemplo de artigo descreve o método do JS para determinar se uma string contém uma substring. Compartilhe para sua referência. Os detalhes são os seguintes:
Em nosso desenvolvimento diário de front-end, geralmente encontramos julgando se uma string contém uma substring. Aqui, exploraremos algumas soluções para esse requisito e as usaremos corretamente. Idealmente, o que estamos procurando é um método que corresponda ao nosso propósito (se x contiver y) e retorna verdadeiro ou falso.
1. String.prototype.IndexOF e String.prototype.LastIndexof
Esses dois métodos são provavelmente a coisa mais fácil em que pensamos. Se contiver uma substring, retornará um índice maior ou igual a 0, caso contrário, retorna -1, que não atende à nossa situação ideal.
A cópia de código é a seguinte: var str = "O nome do meu blog é focado em Benjamin no desenvolvimento do front-end e na experiência do usuário",
substr = "benjamin";
função iscontains (str, substr) {
return str.IndexOF (substr)> = 0;
}
//verdadeiro
console.log (ISContains (str, substr));
2. String.prototype.search
Pensamos no método de string.prototype.search, porque o parâmetro do método de pesquisa é uma expressão regular, é o mesmo que o caso do indexOF.
A cópia de código é a seguinte: var str = "O nome do meu blog é focado em Benjamin no desenvolvimento do front-end e na experiência do usuário",
substr = "benjamin";
função iscontains (str, substr) {
retornar novo regexp (substr) .test (str);
}
//verdadeiro
console.log (ISContains (str, substr));
Esse método parece melhor que o método IndexOf, que retorna diretamente verdadeiro ou falso, e o teste de nome do método é mais semântico que o indexOF.
3. String.prototype.Contains
A cópia de código é a seguinte: var str = "O nome do meu blog é focado em Benjamin no desenvolvimento do front-end e na experiência do usuário",
substr = "benjamin";
função iscontains (str, substr) {
return str.contains (substr);
}
//verdadeiro
console.log (ISContains (str, substr));
Atualmente, este método é suportado apenas pelo Firefox e ainda está no rascunho do Ecmascript 6. Este método atende à situação ideal mencionada acima. Para detalhes, clique aqui. Se você deseja usar o método contém, pode consultar a biblioteca de terceiros string.js, clique aqui para baixar String.js. Implementação do código -fonte:
Copie o código da seguinte forma: contém: function (ss) {
Retorne this.s.IndexOF (SS)> = 0;
},
Outros métodos devem ser complementados. . .
Obviamente, em termos de problemas de desempenho, qual método a ser usado ainda está para ser testado. Amigos interessados podem querer testá -lo sozinho.
Espero que este artigo seja útil para a programação JavaScript de todos.