谁能解释一下下面这段代码的执行结果的原因:
代码:
let obj = {
event: (function() {
return new Date() + Math.random().toString(36).substr(2)
}())
}
let _f = (o) => {
console.log(o)
}
let _t = (o) => {
console.log(o)
}
(() => {
_f(obj)
setTimeout(()=>{
_t(obj)
},3000)
})()
执行结果
{ event: 'Fri Sep 09 2022 14:14:35 GMT+0800 (中国标准时间)ccr1botim66' }
{ event: 'Fri Sep 09 2022 14:14:35 GMT+0800 (中国标准时间)ccr1botim66' }
期待结果
打印出来不一样的随机值