CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  JavaScript

谁能帮我看看为什麽运行完后没有结果,是空页面??俺是新手

楼主jiangke(青青子矜)2004-12-02 09:41:01 在 Web 开发 / JavaScript 提问

<HTML>  
  <HEAD>  
  </HEAD>  
  <BODY>    
  <script   Language="JavaScript">  
  <!--  
   
  Function   university(name,city,creatDate   URL){  
   
  This.name=name;  
  This.city=city;  
  This.creatDate=New   Date(creatDate);  
  This.URL=URL;  
  This.showuniversity=showuniversity;  
  }  
   
   
  var   U1=New   university("云南省","昆明市","January   05,1997   12:00:00","http://www.YN.KM");  
  var   U2=New   university("云南电子科技大学","昆明","January   07,1997   12:00:00","htlp://www.YNKJ.CN");  
   
   
   
  function   showuniversity(){  
  For   (var   prop   in   this)    
  alert(prop+="+this[prop]+"");  
  }  
   
  -->  
  </Script>  
  </BODY>  
  </HTML>  
   
  问题点数:20、回复次数:12Top

1 楼meizz(梅花雪)回复于 2004-12-02 09:47:54 得分 0

你是不是以前定VB类的呀,   大小写不分:  
  Function   university(name,city,creatDate   URL)  
  ==>  
  function   university(name,city,creatDate,URL)  
   
  This.name=name;  
  ==>  
  this.name=name;  
   
  This.creatDate=New   Date(creatDate);  
  ==>  
  this.creatDate=new   Date(creatDate);  
   
  var   U1=New   university  
  ==>  
  var   U1=new   universityTop

2 楼meizz(梅花雪)回复于 2004-12-02 09:48:19 得分 0

<HTML>  
  <HEAD>  
  </HEAD>  
  <BODY>  
  <script   Language="JavaScript">  
  <!--  
   
  function   university(name,city,creatDate,URL){  
   
  this.name=name;  
  this.city=city;  
  this.creatDate=new   Date(creatDate);  
  this.URL=URL;  
  this.showuniversity=showuniversity;  
  }  
   
   
  var   U1=new   university("云南省","昆明市","January   05,1997   12:00:00","http://www.YN.KM");  
  var   U2=new   university("云南电子科技大学","昆明","January   07,1997   12:00:00","htlp://www.YNKJ.CN");  
   
   
   
  function   showuniversity(){  
  for   (var   prop   in   this)  
  alert(prop   +="   =   "+this[prop]+"");  
  }  
   
  U1.showuniversity()  
  //   -->  
  </Script>  
  </BODY>  
  </HTML>Top

3 楼jiangke(青青子矜)回复于 2004-12-02 10:14:50 得分 0

多谢     meizz(梅花雪)   ,原来还要区分大小写啊,呵呵,另外弹出的U1,怎麽最后还有弹出如下的代码?  
  function   showuniversity(){  
  for   (var   prop   in   this)    
  alert(prop   +="   =   "+this[prop]+"");  
  }  
  谢谢!  
  Top

4 楼meizz(梅花雪)回复于 2004-12-02 10:16:39 得分 0

this   里当然也包括   this.showuniversity()   这个方法定义呀,   你轮循的时候当然也会把这个方法的定义轮出来的Top

5 楼meizz(梅花雪)回复于 2004-12-02 10:19:31 得分 0

function   showuniversity()  
  {  
      for   (var   prop   in   this)  
      {  
          if(typeof(this[prop])   !=   "function")  
          alert(prop   +="   =   "+this[prop]+"");  
      }  
  }  
   
  加了这么一句判断就不会出来这个方法的具体定义了Top

6 楼jiangke(青青子矜)回复于 2004-12-02 10:32:23 得分 0

果然,谢谢meizz(梅花雪)的指点!!!还有一个问题,在如下代码中为什麽可以用这句:  
  document.write(body1);   //这里为Person.toString()创建一个调用  
  来创建一个调用呢,为什麽我把它换成body1.toString后就不能显示body1的内容了呢???  
   
   
  <HTML>  
  <HEAD>  
  </HEAD>  
  <BODY>    
  <SCRIPT   language="JavaScript">  
  <!--   Hide   from   older   browsers  
   
  function   Person(name,   age,   colour)   {  
  this.name   =   name;  
  this.age   =   age;  
  this.colour   =   colour;  
  this.birthYear   =   (new   Date()).getYear()   -   this.age;  
  this.toString   =   printPerson;   //   这里定义the   Person.toString()   方法  
  this.isOlder   =   isOlder;   //   这里定义Person.isOlder(Person)   方法  
  }  
   
  function   printPerson()   {  
  var   text   =   this.name   +   "   was   born   in   "   +   this.birthYear   +"<br>";  
  text   +=   "and   is   "   +   this.age   +   "   years   old.<p>";  
  return   text;  
  }  
   
  function   isOlder(otherPerson)   {   //   这里定义是否第一个人是更老的  
   
  return   (this.age   >   otherPerson.age);   //   返回布尔型数值  
   
  }  
  //下面的代码用于测试我们的函数  
   
  var   body1   =   new   Person("Patrick",   22,   "red");  
  var   body2   =   new   Person("Betty",   21,   "green");  
   
  document.write(body1);   //这里为Person.toString()创建一个调用  
  document.write(body2);  
   
  document.write(body1.name);  
  document.write((body1.isOlder(body2))   ?   "   is   "   :   "   is   not   ");   //   是否更老?  
  document.write("older   than   "   +   body2.name);  
   
  //   Stop   hiding   -->  
   
  </SCRIPT>  
  </BODY>  
  </HTML>Top

7 楼meizz(梅花雪)回复于 2004-12-02 10:38:13 得分 20

没有问题呀!!  
  document.write(body1.toString());  
  document.write(body2.toString());Top

8 楼jiangke(青青子矜)回复于 2004-12-02 10:43:29 得分 0

哦,是这样用啊,我直接写成了body1.toString();没有加document.write,呵呵,这里为什麽不能直接写成body1.toString();呢,而上面的就可以写成U1.showuniversity();呢???Top

9 楼jiangke(青青子矜)回复于 2004-12-02 10:49:01 得分 0

这句  
  document.write(body1);   //这里为Person.toString()创建一个调用  
   
  是不是当只有一个方法时就是默认调用该方法呢?Top

10 楼meizz(梅花雪)回复于 2004-12-02 10:52:44 得分 0

不是,   是因为   toString()   是一个系统函数,   你只不过是在写代码的时候重载了而已Top

11 楼jiangke(青青子矜)回复于 2004-12-02 11:00:43 得分 0

那我就有点晕了,在  
  function   Person(name,   age,   colour)   {  
  ...  
  this.toString   =   printPerson;   //   这里定义Person.toString()   方法  
  ...}  
  定义   Person.toString()   方法后,在显示的时候又没有用到啊?  
   
  那document.write(body1);   是怎麽调用Person.toString()方法的呢?Top

12 楼jiangke(青青子矜)回复于 2004-12-02 11:28:04 得分 0

meizz(梅花雪)   不在线了吗?Top

相关问题

  • 我重画了一个Button,可是怎麽在设计状态看不到它呢?运行以后才能看到,为什麽??这样就不能在设计状态调整页面控件的布局了!!
  • 如何计算页面运行时间
  • Web页面运行时出错
  • 页面运行存储过程,超时^^^^^^^^^^^^^^^^^^^^^
  • 运行jsp页面,却什么不见?
  • 无法运行/调试ASP.NET页面
  • asp运行页面的原理?
  • GetVolumeInformation为什麽VolumeSerialNumber在Windows98中运行时总为0?
  • ::PostMessage()的运行机制是什麽样的
  • 为什麽我的机子不能运行asp?

关键词

得分解答快速导航

  • 帖主:jiangke
  • meizz

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo