Document.currentScript

The Document.currentScript property returns the <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 <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.

Value

A <script> or null.

Examples

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");
}

View Live Examples

Specifications

Specification
HTML Standard
# dom-document-currentscript-dev

Browser compatibility

BCD tables only load in the browser

See also