files/en-us/web/api/document/currentscript/index.md
{{APIRef("DOM")}}
The Document.currentScript property returns the {{HTMLElement("script")}} element whose script is currently being processed and isn't a JavaScript module. (For modules use import.meta instead.)
It's important to note that this will not reference the {{HTMLElement("script")}} element if the code in the script is being called as a callback or event handler; it will only reference the element while it's initially being processed.
A {{domxref("HTMLScriptElement")}} or null.
This example checks to see if the script is being executed asynchronously:
if (document.currentScript.async) {
console.log("Executing asynchronously");
} else {
console.log("Executing synchronously");
}
{{Specifications}}
{{Compat}}
import.metaDocumentDocument