关于document.scripts

laydate.js日期插件源码中,有一段代码会自动创建标签然后引入自身使用css文件,有一个获取laydate.js文件路径函数:

//获取组件存放路径
Dates.getPath = (function(){
    var js = document.scripts, jsPath = js[js.length - 1].src;
    return config.path ? config.path : jsPath.substring(0, jsPath.lastIndexOf("/") + 1);
}());

我第一次见到document.scripts, 然后查询得知,这会返回全部script的HTMLCollection
对象,这个对象类似数组,但是并不是真正的数组.

看到js[js.length - 1].src 这行代码,我立马就想给这个插件提一个bug, 假如,最后一个

但是取到的依然是
我很疑惑, 各种找资料,然后又把laydate.js位置移动到不同的地方, 最后发现总能取到laydate.js引入之前的所有之前的

你可能感兴趣的:(关于document.scripts)