关于js的对象问题(成员相关)

    js语法一直都属于很宽松的那种类型,本身的灵活使得我对其对象创建的时候其成员定义的方式有不少迷惑,于是用jslibs做了一个实验。
    
      var test1=function(){};//正常
      test1.prototype.s=100;

      var test2=function(){};
      var test2.prototype.s=100;//报错

       var test3=function(){var s=100;};//没有报错,但是new以后不能得到s,可见s此时并不是test3的成员变量

       var test4=function(){var this.s=100;};//报错
       
       var test5=function(){this.s=100;};//正常
     

可见除了2,4是语法错误外,3中s并不是定义为类test3的成员,而只是一个普通的变量,只是其定义在函数test3之中。
       做了web开发才认证学习js,以前总觉得js只是在浏览器里很不爽,很没意思,现在发现js还是蛮有趣的,尤其是看到jslibs standalone。
      

你可能感兴趣的:(JavaScript,Web,浏览器,prototype)