在一个JS文件中引用另一个JS文件,想一下市面上有html转换javascript的工具,那么我们用html的思维思考一下如何引用js
html中引用js是下面这样代码:
<script language=javascript src=’/js/import.js’></script>
那么我们在js中也可以通过这种方法引用外部js
方法一、在js文件的加入下例代码:
document.write(”<script language=javascript src=’/js/import.js’></script>”);
//(注:有时你引用的文件还可能需要引用其他的js,我们需要将需要的那个js文件也以同样的方法引用进来)
这种方法最为简单,下面说一种稍微有难度的方法
方法二、在html页面中引入a.js,把下面的js语句放到a.js中就可以引入b.js,这样html就引入了a.js和b.js,引入b.js的地址是相对于html的,也就是和引入a.js的地址一样,a.js必须放在body中。
var new_element=document.createElement(”script”);
new_element.setAttribute(”type”,”text/javascript”);
new_element.setAttribute(”src”,”b.js”);
document.body.appendChild(new_element);
首先,我们使用 document.createElement(”script”)
生成一个script的标签,并将其类型属性设置为text/javascript,src为import.js(这两个js可以放在同一个目录下,也可以放在不同的目录下)。最后,将这个标签动态地加入body中。
这样,我们就可以调用不同js文件中的方法。
注意:
<script language=”javascript” src=’a.js’></script>
方法二中的script代码一定要放在body内。
因为在a.js中使用了 body(document.body.appendChild(new_element);)
如果把引入a.js的代码放在body上,也就是进入页面后,在生成body之前已经执行了a.js里的 document.body.appendChild(new_element);
了。
这时,如果body不存在,就会抛出javascript错误。