1. Función de fábrica: una función que devuelve un objeto
2. Función de fábrica avanzada: una función de fábrica cuyos parámetros son funciones de devolución de llamada y funciones de fábrica
3. Ejemplos:
<script>
function superFunc(factory){
return (...arguments)=>{
console.log(...arguments)
const instance=factory(...arguments)
const time=new Date()
return {
time,
instance
}
}
}
let createOrder=superFunc(function(ingredients){
return {
type:"order",
ingredients
}
})
console.log(createOrder('text'))
</script>