You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让外部JavaScript获取自身的引入URL?

获取当前外部JS文件的引入URL

当然可以实现这样的getMySrc()函数,下面是具体实现和说明:

实现代码

function getMySrc() {
  // 优先使用标准API获取当前执行的script元素
  if (document.currentScript) {
    return document.currentScript.src;
  }
  // 兼容不支持currentScript的旧环境(如IE)
  const scripts = document.getElementsByTagName('script');
  return scripts[scripts.length - 1].src;
}

原理说明

  • 现代浏览器方案:document.currentScript是浏览器原生提供的API,它会直接指向当前正在执行的<script>元素,直接读取其src属性就能得到引入当前JS文件的URL,这是最可靠的方式,支持Chrome、Firefox、Edge等主流现代浏览器。
  • 旧环境兼容方案:对于IE这类不支持document.currentScript的环境,由于同步加载的脚本是按DOM解析顺序执行的,当脚本运行时,它是当前DOM中已解析完成的最后一个<script>标签,因此可以通过获取所有<script>元素并取最后一个的src属性来实现。
  • 注意事项:如果脚本是通过async或defer属性异步引入的,兼容方案可能失效,但document.currentScript依然能正常工作(只要浏览器支持该API)。

内容的提问来源于stack exchange,提问作者Danger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 15:54:36