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

526
Visualizações
Función isSorted en Javascript: cómo usar for-of-loop en el código

Soy un principiante en la escritura de código JS y tengo una pregunta sobre la función isSorted.

Se supone que debo usar for-of-loop en el código.

Aquí está la tarea:

Declara una función ordenada.

 /** * @param {Array<number>} ??? - an array of numbers * @returns {boolean} whether or not the given array is sorted */

Esto es lo que escribí

 function isSorted(array) { const result = []; for (const number of array) { if (number < number1 && number2 ) { result.push(number); } return true; } }

Aquí está el mensaje de error que me sale

mensaje de error

Aquí está la prueba que no pude pasar con mi código anterior

 actual = isSorted([1, 2, 3]); expected = true; if (actual === expected) { console.log("Test PASSED."); } else { console.error("Test FAILED. Keep trying!"); console.group("Result:"); console.log(" actual:", actual); console.log("expected:", expected); console.groupEnd(); } actual = isSorted([3, 2, 3]); expected = false; if (actual === expected) { console.log("Test PASSED."); } else { console.error("Test FAILED. Keep trying!"); console.group("Result:"); console.log(" actual:", actual); console.log("expected:", expected); console.groupEnd(); }
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Puede comparar el i-ésimo elemento de la matriz con el siguiente. Si un elemento es mayor que el siguiente, la matriz no se ordena

 function isSorted(array) { for (let i = 0; i < array.length; ++i) { if (array[i + 1]) { if (array[i] > array[i + 1]) { return false; } } } return true; }

O puede reducir su matriz a un valor booleano (ver Array.prototype.reduce() ):

 function isSorted(array) { return array.reduce((prev, cur) => prev !== false && cur >= prev && cur) }

donde prev es el valor resultante de la iteración anterior y cur el elemento de la iteración actual.

about 4 years ago · Juan Pablo Isaza Relatório

0

Pruebe esta función ordenada:

 function isSorted(array) { let previousNo = null; for (const number of array) { if (previousNo != null && number < previousNo) { return false; } previousNo = number; } return true; }

Todavía usa el bucle for..of, y esto es lo que está haciendo:

  • "previousNo" almacenará el número que se había visto durante la iteración anterior del ciclo, para que podamos ver si nuestro número actual es menor. si es así, eso significa que los números no están almacenados en orden ascendente, es decir, no están ordenados (por lo que devolvemos falso en este caso).
  • Si no se encontraron problemas en el ciclo, devolvemos verdadero (su versión también hizo esto, la única diferencia es que usted devolvió verdadero dentro del ciclo, evitando que se verifiquen los otros elementos).
about 4 years ago · Juan Pablo Isaza Relatório

0

Esta función compara los miembros de la matriz: el primero con el segundo, el segundo con el tercero... etc. Si el siguiente miembro de la matriz es menor que el real, devuelve falso (la matriz no está ordenada).

 function isSorted(array) { for (var i = 0; i<array.length; i++) { if (array[i] > array[i+1]) { return false; } } return true; }
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