一个页面有俩个名称相同的JS函数,如何分别调用呢

yanchang 2006-11-16 02:37:04

<BODY>

<script>



function f()
{
alert(1111);
}


function f()
{
alert(55555555);
}


</script>

<button onclick="f()">
</BODY>

当电鸡按钮时,如何调用到第一个f()
...全文
476 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
rockywu 2006-11-16
  • 打赏
  • 举报
回复
刚学js,刚好看到高手出招,谢谢了!
Amwpfiqvy(给我分吧,让我升仙)

<script>
//1----2----1----1
var f = function(){alert(1);};
var f1 = f;
var f = function(){alert(2)};

f1();//1----var f = function(){alert(1);};
f();//2----function(){alert(2)};

f = f1;//改为var f = function(){alert(1);};也就是1

f1();//1-----function(){alert(1);};
f();//为什么不是2而是1???------??
</script>
yanchang 2006-11-16
  • 打赏
  • 举报
回复
郁闷ing...
Apq001 2006-11-16
  • 打赏
  • 举报
回复
呵呵,巧了,这个问题刚好就不是你觉得有就有的。
等你明白语句的解析优先级你就可以知道我为什么说不行了。
yanchang 2006-11-16
  • 打赏
  • 举报
回复
谢谢您了

不过我觉得应该有诡异的办法可以解决这个问题的
Apq001 2006-11-16
  • 打赏
  • 举报
回复
由于function x(){}这种方式的解析优先级比var x = function(){}高,所以我建议你写函数多用后一种方式,这样你就可以很容易的精确控制解析顺序(当然第一种也可以,只是难度高些),如果遇到想改名的情况也好办,举例:
var f = function(){alert(1);};


var f1 = f;
var f = function(){alert(2)};

f1();
f();

f = f1;

f1();
f();
Apq001 2006-11-16
  • 打赏
  • 举报
回复
像你问题里这种情况,没办法,只能改名。
yanchang 2006-11-16
  • 打赏
  • 举报
回复
to:Amwpfiqvy(给我分吧,让我升仙) 如何用JS给已经有的函数改名字呢
Apq001 2006-11-16
  • 打赏
  • 举报
回复
你运行以下代码,看你能明白不:
var f1,f2;
f1 = f2 = function(){alert('给你看')};

f1();
f2();

function f1(){alert("就不出来")};
gtw0520 2006-11-16
  • 打赏
  • 举报
回复
js函数重名不出错吗,。。。学习中
Apq001 2006-11-16
  • 打赏
  • 举报
回复
函数也是对象,无所谓重命名的问题。
只要有引用,就能用。

function f(){}
这种写法就相当于:
var f = function(){};
w78z007 2006-11-16
  • 打赏
  • 举报
回复
函数可以重命名吗?

学习
Apq001 2006-11-16
  • 打赏
  • 举报
回复
改名。
var f1 = function()
{
alert(1111);
}


var f2 = function()
{
alert(55555555);
}

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧