Tengo una función para reordenar una matriz con objetos dentro y llamo a esa función con la propiedad del objeto que quiero ordenar, pero no sé cómo configurar la función de devolución de llamada para usar el parámetro. Intenté usar eval() pero sin éxito. No está funcionando correctamente.
function order(param){ const newOrder = arrayContent.sort((first,second) => (`${first}.${param}` > `${second}.${param}`) ? 1 : -1); }; order('name')Es bastante fácil de implementar. Puede hacer referencia al objeto con 'notación de puntos', por ejemplo, object.name o con la ayuda de corchetes, por ejemplo object['name'] donde podría poner cualquier cadena entre corchetes para referirse a cierto 'campo interno'
let arrayContent = [{number:3,name:'Alice'},{number:2, name:'Maxim'}]; //your array let order = param => arrayContent.sort((first,second) => first[param] < second[param]?1:-1); order('name'); console.log(arrayContent); order('number'); console.log(arrayContent);