<script type="text/javascript">
    var person = {
        name:"Kevin Yang",
        sayHi:function(){
            alert("你好,我是"+this.name);
        }
    }
    setTimeout(person.sayHi,2000);
</script>

解决方案 »

  1.   

    this  指 调用者的对象setTimeout(person.sayHi,2000);
    换成
    person.sayHi();就能正确了。
      

  2.   

    你这里 this 指的是 window 对象
      

  3.   

    或者 <script type="text/javascript">
      var person = {
      name:"Kevin Yang",
      sayHi:function(){
      alert("你好,我是"+person .name);
      }
      }
      setTimeout(person.sayHi,2000);
    </script>
      

  4.   

    <script type="text/javascript">
      var person = {
      name:"Kevin Yang",
      sayHi:function(){
      alert("你好,我是"+this.name);
      }
      }
      setTimeout(function(){person.sayHi()},2000);
    </script>
      

  5.   

      var person = {
      name:"Kevin Yang",
      sayHi:function(){
      alert("你好,我是"+this.name);
      }
      }
      setTimeout("person.sayHi()",10);var t=setTimeout("javascript语句",毫秒)
    javascript语句要在双引号之内,而且方法要加括号.
      

  6.   

      var person = {
      name:"Kevin Yang",
      sayHi:function(){
      alert("你好,我是"+this.name);
      }
      }
      setTimeout("person.sayHi()",10);setTimeout("javascript语句",毫秒)
    javascript语句要在双引号之内,而且方法要加括号.
      

  7.   

    var person={
    "SayHello":function(name){
     alert(name);
    }
    }
    调用:
    person.SayHello("Test");