Document.currentScript 属性返回当前正在运行的脚本所属的 <script> 元素。调用此属性的脚本不能是 JavaScript 模块,模块应当使用 import.meta 对象。
值得注意的是,如果当前正在执行的代码是被其他代码作为回调函数或者事件处理函数调用的,那么 currentScript 属性不会指向任何 <script>元素,而是会返回 null。这个属性只在脚本被解析后首次运行时有效。
实例1(下例演示了如何检测当前正在执行脚本的
if (document.currentScript.async) {
console.log("Executing asynchronously");
} else {
console.log("Executing synchronously");
}
实例2(获取自身get参数)
// 注意:该代码需要写在js文件里(<script src="..."></script>),直接在浏览器控制台执行无效
var src = document.currentScript.src;
var getParam = src.substring(src.lastIndexOf('?')+1);
console.log(getParam);