JS环境中第0行的脚本错误

时间:2014-11-19 15:23:21

标签: javascript arrays object runtime-error

我的JS代码出了问题。我必须用物体制作闹钟,但它不起作用,即使在我看来也没问题。 这是:

function AlarmClock(){

  this.hour;
  this.minutes;
  this.Hours=[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];

  this.currentTime=
    function(h, m){
    this.hour=h;
    this.minutes=m;
    if (this.hour>23){
      this.hour=0;
    }
    if(this.minutes>59){
      this.minutes=0;
    }
  }

  this.alarm=
    function(h, m){
    this.hour=h;
    this.minutes=m;
    if(this.hour>23){
      this.hour=0;
    }
    if(this.minutes>59){
      this.minutes=0;
    }
  }

  this.tic=
    function(){
    var i=0;
    while(i<=m){
      m.currentTime+=i;
    if(m.currentTime==60){
      h.currentTime+=1;
    }
   if (h.currentTime==24){
      h.currentTime=0;
    } 
   if(((h.currentTime)&&(m.currentTime))==((h.alarm)&&(m.alarm))){
      return ("Time to wake up!");
    }else{
        i++;
    }
  }
}

function foo(){
  var c=new AlarmClock();
  c.currentTime(13, 0);
  c.alarm(13, 2);
}
  foo();

我在两个不同的环境中尝试了两次:

我怎么能骑过这个?

非常感谢你:D

2 个答案:

答案 0 :(得分:2)

函数AlarmClock()缺少最后一个结束括号}。只需将}置于函数foo()之上。

答案 1 :(得分:0)

}

您遗失function AlarmClock(){
function AlarmClock(){

  this.hour;
  this.minutes;
  this.Hours=[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];

  this.currentTime=
    function(h, m){
    this.hour=h;
    this.minutes=m;
    if (this.hour>23){
      this.hour=0;
    }
    if(this.minutes>59){
      this.minutes=0;
    }
  }

  this.alarm=
    function(h, m){
    this.hour=h;
    this.minutes=m;
    if(this.hour>23){
      this.hour=0;
    }
    if(this.minutes>59){
      this.minutes=0;
    }
  }

  this.tic=
    function(){
    var i=0;
    while(i<=m){
      m.currentTime+=i;
    if(m.currentTime==60){
      h.currentTime+=1;
    }
   if (h.currentTime==24){
      h.currentTime=0;
    } 
   if(((h.currentTime)&&(m.currentTime))==((h.alarm)&&(m.alarm))){
      return ("Time to wake up!");
    }else{
        i++;
    }
  }
}
} <----------------- HERE

function foo(){
  var c=new AlarmClock();
  c.currentTime(13, 0);
  c.alarm(13, 2);
}

foo();

Jsfiddle