当前位置:编程学习 > C#/ASP.NET >>

初学JS,请大家给看看,为什么出现两次结果,明明我是让它执行一次的,谢谢看贴回贴的兄弟了

<html>
<body>
<script language="javascript" type="text/javascript">
<!--
function foo()
{
this.innerMethod();
}
foo.prototype.innerMethod=function(){
alert("this is a innerMethod");
}


var cc=new foo();
cc.innerMethod();//这是我想调用innerMethod方法的地方,可是为什么一执行就执行了两次呢??两次啊??见鬼啊??我哪里错了呢,请高人给讲一下

-->
</script>
</body>
</html> --------------------编程问答-------------------- 是不是哪错了??请大家说一下明白了立即给分的 --------------------编程问答-------------------- 上面的代码你另存为就可以看到我说的状况了 --------------------编程问答--------------------

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body >
    <form id="form1" runat="server">
      <script>
        function   foo() 
        { 
            //this.innerMethod();
        } 
        foo.prototype.innerMethod=function(){ 
            alert( "this   is   a   innerMethod "); 
        } 
        var   cc=new   foo(); //因为你在实例化foo时就调用了一次 innerMethod()
        cc.innerMethod();     //在这里又调用了一次innerMethod()所以执行次,实例化时会执行方法内的代码.
    </script>
    </form>
</body>
</html>

</html>

--------------------编程问答-------------------- 确实如此。 --------------------编程问答-------------------- function   foo() 
        { 
            //this.innerMethod();
        } 
为什么要去掉呢??难道不能定义内部的方法不成??请高人给说细些好吗 --------------------编程问答-------------------- 我在内部定义一个空的方法,然后再扩展它,我想思路也没有错啊,可是为什么会出错呢?为什么会出现执行两次呢???请了解js的高手给说细些,明白了,当场给分,谢谢看看贴的各位了 --------------------编程问答-------------------- 自己顶,顶来人气,顶来牛人 --------------------编程问答-------------------- function   foo() 

this.innerMethod(); 

在这里你已经调用了innerMethod()方法,在后面有实例化foo()类,当然会执行两次。 --------------------编程问答-------------------- 再UP --------------------编程问答-------------------- 三楼的朋友写到“var   cc=new   foo(); //因为你在实例化foo时就调用了一次 innerMethod()”

其实我只想定义这个函数,怎么会成了调用呢??请问如何才是定义这个函数,而不是调用它呢(我的意思是在内部写函数的情况下,不是不写的写的情况) --------------------编程问答-------------------- 难道,就不在一个函数里定义一下空方法吗??请高人给说一下啊,我真是急切想知道,明白了立即给分的 --------------------编程问答-------------------- 晕了,大家没人能帮我解答一下吗??初学{自学}好难的,请各位伸伸手,谢谢了,我明白了立即解分的 --------------------编程问答-------------------- jS 好像不象C语言,不用在使用前申明吧 --------------------编程问答-------------------- 请给个肯定的答案~~~ --------------------编程问答-------------------- 不行了转javascript区了………………~~~~~@@@@#####¥¥¥¥¥ --------------------编程问答-------------------- javascript区的朋友们,帮我解答一下好吗,谢谢了 --------------------编程问答-------------------- 自己先UP一下 --------------------编程问答-------------------- 帮帮我吧,我找到了一也没有找到相关的资料啊,请会的朋友帮我一下吧,到底是为什么呢,为什么不能定义呢?? --------------------编程问答-------------------- 急切的UP --------------------编程问答-------------------- 100分的帖子在
http://topic.csdn.net/u/20071103/20/2c6d5db1-6ffb-45d9-92a9-1582548f9503.html

大家多帮助我一下吧,急了一天了 --------------------编程问答-------------------- 这应该和对象创建的道理一样吧 
  你在创建对象时调用了一次this.innerMethod();   
  后面再调用cc.innerMethod();
  所以执行两次 --------------------编程问答-------------------- hehe.
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,