首頁 > web前端 > js教程 > 如何在 JavaScript 的 `setInterval()` 保留 `this` 上下文?

如何在 JavaScript 的 `setInterval()` 保留 `this` 上下文?

DDD
發布: 2024-12-05 18:25:11
原創
259 人瀏覽過

How to Preserve the `this` Context in JavaScript's `setInterval()`?

在JavaScript 的setInterval 處理程序中保留'this' 引用

使用JavaScript 的setInterval() 函數時,經常會遇到「 this”問題。當您需要從間隔處理函數內存取物件的屬性或方法時,就會發生這種情況。

考慮以下程式碼:

在這個範例中,我們要存取 prefs 屬性來自 ajax.onload 處理程式函數。但是,這不會按預期工作,因為 this 引用在間隔處理程序中遺失。

要解決此問題,您可以使用 bind() 方法建立一個綁定 this 引用的新函數。方法如下:

透過使用bind(),我們建立一個新函數,將其this引用綁定到原始物件(this)。這可確保在 ajax.onload 處理程序中正確引用 prefs 屬性。

以上是如何在 JavaScript 的 `setInterval()` 保留 `this` 上下文?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板