问答详情
源自:8-3 计时器setInterval()

关于JavaScript的数据类型的问题

在JavaScript进阶篇的习题里,我看到同学的代码如下,里面用到字符串的连接。可是难道getHours()的返回值竟是string类型?此外,没想到一个字符串居然可以赋值给value。具体问题在代码中有注释出来,求大神解释一下。其实我知道JavaScript是动态解释的语言。不过作为一个学了C++之类静态语言的人还是感到暂时难以接受……

<title>定时器</title>

<script type="text/javascript">

  var attime;

  var colorHead,colorFoot;

  function clock(){

    var time=new Date();

    var HH = time.getHours();

    if(HH<10){HH="0"+HH}; //这是字符串的连接。难道getHours()的返回值竟是string类型?

    var MM = time.getMinutes();

    if(MM<10){MM="0"+MM};

    var SS = time.getSeconds();

    if(SS<10){SS="0"+SS};

    var ww = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]

    var nWeek = time.getDay();

    attime= HH+":"+MM+":"+SS+" "+ww[nWeek];

    document.getElementById("clock").value = attime; 

//没想到一个字符串居然可以赋值给value

  }

  var timer = setInterval(clock,1000);


提问者:azure1016 2016-08-18 16:09

个回答

  • Zone_0003
    2016-08-18 17:19:17

    var 是一个盒子,没有具体的数据类型的