html中调用两个javascript文件里的函数但是函数名相同怎么办

由于现在没有分所以不好意思有知道的高手请解答万分感谢js是分离的也就是这两个js文件里有相同的函数名但是内容不同应该怎么区别呢谢谢... 由于现在没有分所以不好意思
有知道的高手请解答万分感谢
js是分离的也就是这两个js文件里有相同的函数名但是内容不同应该怎么区别呢谢谢
展开
 我来答
百度网友9685a44
2010-02-01 · TA获得超过576个赞
知道小有建树答主
回答量:223
采纳率:0%
帮助的人:196万
展开全部
只能“忍痛”改名了,如果说只是运行,没有在网页中调用的话,还可以把它们都写成“闭包”,比如:
JS1:
(function(){
//JS1的内容放在这里
})()
JS2也一样,其实这样就是写了一个匿名函数,并且立即调用了,里面的内容对外来说是不可见的(除非在里面改变了外面的东西,比如window),所以叫“闭包”
你可以到百科看下更详细的内容。
百度网友a927ff9
推荐于2017-12-16 · TA获得超过692个赞
知道小有建树答主
回答量:584
采纳率:0%
帮助的人:566万
展开全部
解释器是按照函数定义的先后,后定义的覆盖先定义的。如果函数来自不同的文件,按文件被include的顺序来。
举例说有1.js和2.js,里面分别有fun()的函数定义。
如果html文件先include 1.js再include 2.js,那么后续对fun()的调用就来自2.js;而如果在include 2.js之前的调用则来自1.js
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
KarasCanvas
2010-02-02 · TA获得超过2865个赞
知道大有可为答主
回答量:3619
采纳率:0%
帮助的人:3266万
展开全部
加上一个"命名空间"

var a = a||{};

a.fun1 = function(){

};

var b = b||{};
b.fun1 = function(){

};

a.fun1();
b.fun1();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
机峻藤英华
2019-08-19 · TA获得超过1318个赞
知道小有建树答主
回答量:1802
采纳率:92%
帮助的人:10.5万
展开全部
题主是说在 run 外部调用 a、b、c?<br><br><br>那是不可能的,使用嵌套函数的目的就是为了让外部无法调用,以达到封装性的目的。<br><br><br>可以使用折衷的办法:<br>function run(obj){<br> function a(){<br> return '我不爱你';<br> }<br> function b(){<br> return '我爱你';<br> }<br> function c(){<br> return '我只喜欢你';<br> }<br><br> switch(obj){<br> case 'a':<br> return a();<br> break;<br> case 'b':<br> return b();<br> break;<br> case 'c':<br> return c();<br> break; <br> }<br> return null;<br>}使用时:<br>alert(run('a'));<br>alert(run('b'));<br>alert(run('c'));
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
loveandkissyou
2010-02-01 · TA获得超过2297个赞
知道大有可为答主
回答量:2332
采纳率:0%
帮助的人:2535万
展开全部
js可以函数名相同,但下面的覆盖上面的
你最好改名吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式