Estoy tratando de eliminar datos que cumplirán la condición que establecí. Es decir, una vez superada la 'Fecha límite' de la fecha de hoy, deberán ser eliminadas.
Esta es mi base de datos en tiempo real 
Este es mi código para obtener la fecha actual y compararla con los plazos en la base de datos
// get today's date let today = new Date(); let dd = String(today.getDate()).padStart(2, '0'); let mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0! let yyyy = today.getFullYear(); today = yyyy + '-' + mm + '-' + dd; let now = today.toString(); function deadlineLimit(){ const q = query(ref(db, "subjects/MMW/")); get(q).then((snapshot)=>{ snapshot.forEach(function(childSnapshot) { var deadlines = childSnapshot.val(); var dbDates = deadlines["Deadline"]; // if deadlines in database < date today if (dbDates < today){ let expiredDeadline = childSnapshot.val().Deadline; console.log(expiredDeadline + " Must be removed"); // Must be deleted // CODE HERE to remove all data that met the condition } }) }); } deadlineLimit(); // call this functionPuedo obtener los plazos más allá de la fecha de hoy, pero ¿cómo puedo eliminarlos?
Puede usar la función remove() para eliminar esos nodos como se menciona en la documentación :
get(q).then(async (snapshot) => { const deletePromises = []; snapshot.forEach((childSnapshot) => { var deadlines = childSnapshot.val(); var dbDates = deadlines["Deadline"]; if (dbDates < today) { // push to promises array deletePromises.push(remove(childSnapshot.ref)) } }) await Promise.all(deletePromises); console.log("Data deleted") });