用var声明的对象,只有本函数和在其中定义的函数才能访问,对外面来说是完全不可访问的,属于"私有"类型privite.
而用this.sex定义的话,可以在people的每个实例中访问到,

解决方案 »

  1.   

    show you a example:
    <script type="text/javascript">
    <!--
    function People(){
    var braSize = "A"; //不太好意思张扬,所以私有
    this.getBraSize = function (){
    return braSize;
    };
    this.setBraSize = function (size){
    braSize = size;
    }
    }var lily = new People();
    document.write("lily.braSize:",lily.braSize,"<br>");
    document.write("lily.getBraSize():",lily.getBraSize(),"<br>");
    lily.setBraSize("E"); //买药了
    document.write("lily.getBraSize()丰胸以后: ",lily.getBraSize(),"<br>");//-->
    </script>
      

  2.   

    同意zhaoxiaoyang(梅雪香@深圳)的看法,主要是作用域的不同!
      

  3.   


    <script>
    function people(n,a)
    {
      var sex='male';
    //sex是个引用(指针),你给它赋什么值都可以
    //你可以看作'male'这个值不属于sex,也不属于任何变量
    //它是内存里的一块数据~~sex只是指向了它~~
      alert(sex);
      sex=123;//123是内存里一快数据,现在sex不指向'male',指向123
      alert(sex);
      sex=new Object();
      alert(sex);
      this.name=n;
      this.age=a;
    }
    people()
    </script>
      

  4.   

    要搞清楚的是:javascript不是面向对象语言~~~!!!!
      

  5.   

    he_8134(只有星星伴明月) ( ) 信誉:100    Blog   加为好友  2007-04-26 16:24:59  得分: 0  
     
     
       要搞清楚的是:javascript不是面向对象语言~~~!!!!
      
     
    ---------------------------------------------------------------------------------
    就快是了,别着急
      

  6.   

    BraSize汗一个
    相当于“私有域”的概念