Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

122
Visualizações
Agregar método a la cadena prototipo pero quiere decir este método

Estoy tratando de entender lo que esto significa?
Lo que estoy pensando es que la phrase pasará una parte de la matriz, por lo que en este caso es phrase.palindrome eve Ese método lo tomará y lo ejecutará. Primero, var len toma eve y elimina 1 usando la length -1. Esto da como resultado que a var len se le asigne el número dos ya que la longitud de eve es 3. Ahora for está en uso, por lo que var i = 0; i <= len/2; i++ .
ahora se convierte en var i = 1 ; 1 <= 1; i++ "es esto correcto"
no entiendo que pasa aqui:

 for (var i = 0; i <= len/2; i++) { if (this.charAt(i) !== this.charAt(len-i)) { return false;

Aquí está todo el código:

 String.prototype.palindrome = function() { var len = this.length-1; for (var i = 0; i <= len/2; i++) { if (this.charAt(i) !== this.charAt(len-i)) { return false; } } return true; }; var phrases = ["eve", "kayak", "mom", "wow", "Not a palindrome"]; for (var i = 0; i < phrases.length; i++) { var phrase = phrases[i]; if (phrase.palindrome()) { console.log("'" + phrase + "' is a palindrome"); } else { console.log("'" + phrase + "' is NOT a palindrome"); } }
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

El código esencialmente itera a través de la cadena desde ambas direcciones, comparando el primer y el último carácter (índices 0 y len), luego el segundo desde el primero y el segundo desde el último y así sucesivamente hasta llegar al medio. Una palabra es un palíndromo si y solo si el primer y el último carácter son los mismos y el penúltimo y el penúltimo carácter son los mismos y así sucesivamente.

Tenga en cuenta que hay algo muy mal con este código. Si bien es técnicamente posible mutar los prototipos de los tipos incorporados en Javascript, nunca, nunca, nunca debes hacerlo. No obtiene ninguna funcionalidad que no obtendría de una función normal, mientras viola gravemente el principio de menor sorpresa. Trate todos los tipos de otras bibliotecas, incluidas las integradas, como si estuvieran cerradas para modificación y abiertas para extensión.

about 4 years ago · Juan Pablo Isaza Relatório

0

Creo que esta línea tiene error:

 for (var i = 0; i <= len/2; i++) {

Porque a veces la longitud puede ser 3,5,7... y eso puede ser un problema.

Agregué algunos usando ejemplos:

 for (var i = 0; i <= Math.floor(len / 2); i++) {
 // That same thing with floor in positive numbers, but in negative numbers that works like ceil. for (var i = 0; i <= ~~(len / 2); i++) {
 // That same thing with floor, we can think like this pollyfill of floor. for (var i = 0; i <= ~~(len / 2) + (Math.abs(len)>len?-1:0); i++) {
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda