Código de JavaScript - Compara dos arrays sabiendo que el segundo es la raiz cuadrada de algún valor del primer array

Imágen de perfil
Val: 384
Bronce
Ha aumentado su posición en 10 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Compara dos arrays sabiendo que el segundo es la raiz cuadrada de algún valor del primer arraygráfica de visualizaciones


JavaScript

estrellaestrellaestrellaestrellaestrella(2)
Publicado el 11 de Noviembre del 2019 por katas
477 visualizaciones desde el 11 de Noviembre del 2019
Dado dos arrays (a y b), escribir una función que revise si los dos arrays tienen los mismos elementos, teniendo en cuenta, que los elementos en el array b son la raiz cuadrado de los valores del array a, sin estar en el mismo orden.
Hay que controlar que los array a y b sean arrays y tengan valores, en caso contrario devolver false.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
a = [121, 144, 19, 161, 19, 144, 19, 11];
b = [121, 14641, 20736, 361, 25921, 361, 20736, 361]
document.write("<br>"+comp(a, b)); // true
 
a = [121, 144, 19, 161, 19, 144, 19, 11];
b = [11*11, 121*121, 144*144, 19*19, 161*161, 19*19, 144*144, 19*19];
document.write("<br>"+comp(a, b)); // true
 
a = [121, 144, 19, 161, 19, 144, 19, 11];
b = [121, 14641, 20736, 361, 25921, 361, 20736, 360]
document.write("<br>"+comp(a, b)); // false
 
a = null;
b = [121, 14641, 20736, 361, 25921, 361, 20736, 360]
document.write("<br>"+comp(a, b)); // false
 
a = [];
b = [121, 14641, 20736, 361, 25921, 361, 20736, 360]
document.write("<br>"+comp(a, b)); // false

1
estrellaestrellaestrellaestrellaestrella(2)

Publicado el 11 de Noviembre del 2019gráfica de visualizaciones de la versión: 1
478 visualizaciones desde el 11 de Noviembre del 2019
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
function comp(a, b) {
  return !!a && !!b && a.map(x => x*x).sort().join() == b.sort().join();
}



Comentarios sobre la versión: 1 (2)

Imágen de perfil
14 de Noviembre del 2019
estrellaestrellaestrellaestrellaestrella
Desconocía por completo el !! ... muy interesante.


he buscado y he encontrado esta tabla que espero que sirva para entenderlo mejor:

!!false === false
!!true === true

!!0 === false
!!parseInt("foo") === false // NaN is falsy
!!1 === true
!!-1 === true // -1 is truthy

!!"" === false // empty string is falsy
!!"foo" === true // non-empty string is truthy
!!"false" === true // ...even if it contains a falsy value

!!window.foo === false // undefined is falsy
!!null === false // null is falsy

!!{} === true // an (empty) object is truthy
!![] === true // an (empty) array is truthy; PHP programmers beware!
Responder
Imágen de perfil
16 de Noviembre del 2019
estrellaestrellaestrellaestrellaestrella
interesante!!!
Responder

Comentar la versión: 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s5644