Baru-baru ini, apabila menggunakan vue2 untuk membina projek, saya menghadapi keperluan untuk mengira detik aktif Apabila menggunakan setTimeout untuk mensimulasikan kesan setInterval, sesuatu telah berlaku (sudah tentu, menggunakan yang terakhir boleh menyelesaikan masalah dengan mudah)
let myTimer = setTimeout( () => { if (diffTimer > 0) { hours = Math.floor(diffTimer/3600); minutes = Math.floor((diffTimer/60)%60); seconds = Math.floor(diffTimer%60); this.hours = hours > 9 ? hours : '0' + hours; this.minutes = minutes > 9 ? minutes : '0' + minutes; this.seconds = seconds > 9 ? seconds : '0' + seconds; } else { clearTimeout(myTimer); } diffTimer--; setTimeout(arguments.callee,1000); },1000)
Hasilnya ialah ralat berikut:
![](https://pnpimg.jiaoben.net/upload/image/000/000/000/7a80b198c062ad96e8913c877998d62f-0.jpg)
Nampaknya objek hujah tidak dapat ditemui dalam mod ketat es6...
Objek hujah tidak boleh digunakan apabila menggunakan fungsi anak panah. Objek tidak wujud dalam badan fungsi. Jika anda ingin menggunakannya, anda boleh menggunakan parameter Rehat.