JavaScript - JS ARREGLO AYUDA

 
Vista:
sin imagen de perfil
Val: 15
Ha aumentado su posición en 4 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

JS ARREGLO AYUDA

Publicado por Angel (8 intervenciones) el 05/03/2019 21:51:01
AYUDA.
tengo el siguiente arreglo:
1
2
3
4
5
6
const cuenta = [
  { clientId: 6, bankId: 1, name:luis, balance: 15000 },
  { clientId: 1, bankId: 3, name:pedro, balance: 18000 },
  { clientId: 5, bankId: 3, name:jose, balance: 135000 },
  { clientId: 2, bankId: 2, name:tito, balance: 5600 }
                         ]
y debo mostrar todos los nombres ordenados según su balance mas alto en el arreglo o en ocaciones segun su bankid, o segun su clientid dependiendo se la peticion. no se como hacerlo.

ordenados por su balance de mayor a menor el primer nombre que me deberia salir en el nuevo arreglo seria JOSE ya que el tiene un balance de 1350000 y el ultimo seria tito ya que su balance es 5600.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kevin
Val: 32
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

JS ARREGLO AYUDA

Publicado por Kevin (5 intervenciones) el 05/03/2019 22:46:17
Muy buenas, Angel.

El siguiente código te puede servir, avisame si no funciona.

1
cuenta.sort((a, b) => (a.balance < b.balance) ? 1 : (a.balance === b.balance) ? ((a.balance > b.balance) ? 1 : -1) : -1 );
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 15
Ha aumentado su posición en 4 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

JS ARREGLO AYUDA

Publicado por Angel (8 intervenciones) el 06/03/2019 05:08:48
Saludos amigo. ante todo gracias por la ayuda. que va. no funciono. lo que hace es acomodar el arreglo de mayor a menor pero solo los id. me explico:
clienteid:6...
clienteid:5...
clienteid:4...
clienteid:3..
y asi..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.506
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

JS ARREGLO AYUDA

Publicado por joel (895 intervenciones) el 06/03/2019 08:28:13
Yo he probado el método de Kevin, y si funciona!!! te lo ordena descendentemente por el balance.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kevin
Val: 32
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

JS ARREGLO AYUDA

Publicado por Kevin (5 intervenciones) el 06/03/2019 13:24:39
Hola Angel.

¿Lo que quieres es solamente mostrar los nombres?
En ese caso puedes hacer esto:

1
2
3
4
5
6
7
8
9
10
11
const cuenta = [
  { clientId: 6, bankId: 1, name:'luis', balance: 15000 },
  { clientId: 1, bankId: 3, name:'pedro', balance: 18000 },
  { clientId: 5, bankId: 3, name:'jose', balance: 135000 },
  { clientId: 2, bankId: 2, name:'tito', balance: 5600 }];
 
let resultado=cuenta.sort((a, b) => (a.balance < b.balance) ? 1 : (a.balance === b.balance) ? ((a.balance > b.balance) ? 1 : -1) : -1 );
 
for(var nombres in cuenta){
   console.log(cuenta[nombres].name);
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
3
Comentar
sin imagen de perfil
Val: 15
Ha aumentado su posición en 4 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

JS ARREGLO AYUDA

Publicado por Angel (8 intervenciones) el 06/03/2019 23:46:11
perfecto muchas gracias por el apoyo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.506
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

JS ARREGLO AYUDA

Publicado por joel (895 intervenciones) el 06/03/2019 08:26:05
Hola Angel, seria algo así:
1
let resultado=cuenta.sort((a,b)=>{return a.balance-b.balance});
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar