Tengo una matriz JS con objetos anidados como una "lista de tareas". Cada uno se agrega con diferentes propiedades de Urgencia. Ahora mi función necesita encontrar el valor de urgencia más alto: establezca esto en una variable y luego elimínelo de la matriz.
Estoy atascado en eliminarlo de la matriz original. El problema que tengo podría ser encontrar el índice:
function newTask() { // reducing the "task list" to just the highest urgency let maxObj = taskList.reduce((max, obj) => (max.stockUrgency > obj.stockUrgency) ? max : obj); outputNewtask = JSON.stringify(maxObj, null, 4); let index = taskList.indexOf("outputNewtask") console.log(index)Si su reduce funciona bien, entonces puede usar ese objeto para encontrar el índice y eliminarlo de la lista usando splice :
let maxObj = taskList.reduce((max, obj) => (max.stockUrgency > obj.stockUrgency) ? max : obj); taskList.splice(taskList.indexOf(maxObj), 1); outputNewtask = JSON.stringify(maxObj, null, 4);Este código debería resolver tu problema.
const highestUrgencyValue = Math.max(...taskList.map(t => t.stockUrgency)); const highestUrgencyIndex = taskList.findIndex(task => task.stockUrgency === highestUrgencyValue); taskList.splice(highestUrgencyIndex, 1);