1.工厂函数:返回对象的函数
2.高级工厂函数:参数是回调函数和工厂函数的工厂函数
3.例子:
<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>