Esta é uma pergunta de entrevista da empresa lgzx. Ela requer a adição de um método à String de js para remover os caracteres de espaço em branco (incluindo espaços, tabulações, feeds de formulário, etc.) em ambos os lados da string.
Copie o código do código da seguinte forma:
String.prototype.trim = função() {
//return this.replace(/[(^/s+)(/s+$)]/g,"");//Remova os caracteres de espaço em branco na string
//retornar this.replace(/^/s+|/s+$/g,"");
return this.replace(/^/s+/g,"").replace(//s+$/g,"");
}
JQuery1.4.2, usado por Mootools
Copie o código do código da seguinte forma:
função trim1(str){
return str.replace(/^(/s|/xA0)+|(/s|/xA0)+$/g, '');
}
jQuery1.4.3, usado pelo Prototype Este método remove g para melhorar ligeiramente o desempenho. Ele tem melhor desempenho ao processar strings em pequena escala.
Copie o código do código da seguinte forma:
função trim2(str){
return str.replace(/^(/s|/u00A0)+/,'').replace(/(/s|/u00A0)+$/,'');
}
Após realizar testes de desempenho, Steven Levithan propôs a maneira mais rápida de cortar strings em JS, que apresenta melhor desempenho ao processar strings longas.
Copie o código do código da seguinte forma:
função trim3(str){
str = str.replace(/^(/s|/u00A0)+/,'');
for(var i=str.length-1; i>=0; i--){
if(//S/.test(str.charAt(i))){
str = str.substring(0, i+1);
quebrar;
}
}
retornar string;
}
A última coisa que precisa ser mencionada é que ECMA-262 (V5) adiciona um método trim nativo (15.5.4.20) a String. Além disso, os métodos trimLeft e trimRight foram adicionados a String no mecanismo Molliza Gecko 1.9.1.