js的中关于类的应用

下面是关于一些javascript中的一些心得,每次都忘,所以干脆就把它写下来;
对象:
var object={
                 type:'object',    / /对象属性
                 func:function(){   //对象方法
                        alert('yyyy');
                 }
}
//////////////////////////////////////////
var object=new Objec();
object.ype='object';
object.func=function() { alert('yyyy');

以上两种都上创建对象,第一中比较特殊,好象只有在javascipt中才有这样的写法;并且在通过第二例,可以知道,在建立好对象后,可以在往对象中增加方法和属性,这样就给传统的关于对象的用法不同;不过这样用起来更加灵活,具体原因,我乡是因为javasvript是解释性的,解释器在工作是按照自己的方式解释所有的代码字符川(这点很重要,等回说类的时候在具体说一下);
====================================================
类或者函数:
var class=function(){
              this.name='name';
              this.func=function(){
                    alert('ttt');
              }
}
/////////////////////////////////////////////////////////////////////
class.prototype={
                     init:function(ele) {   
                        alert(ele+"555");  
                      },              //增加方法
                   test:'属性'  //增加属性
}
//////////////////////////////////////////////////////////////////
var class=function(){
              this.name='name';
              this.func=function(){
                    alert('ttt');
              }
              return function() {
                      alert('return newclass');
                      this.new_function();
               }
}
在javascreipt中,函数可以看做是类,类中的this表示类自己,它后面就是类成员了;上面都是在定义类,但也可以象对象一样在扩展类的成员,第二个例子就是;这个时候注意一下,class.prototype现在实际上一个对象,可以把它看成类中的this;
第三个例子中有个 return;它是返回一个类或者函数,当你通过var o=new class()实例对象的时候,new 把类中的所有语句都执行一片,并返回一个函数变量,你可以通过以下发现;
var o=new class();alert(o);此时你回看到函数字符传(函数本身);有了这样一个结果,就可以理解函数做为变量传递的原因了,是不是有点象指针;
最后还要不丛一点,关于new,它除执行函数中的语句以外,还同时返回有个对象,可以通过typeof判断类型,如果函数没有return语句,,通过typeof得到object属性,,如果按照上面的第三例生成对象,才返回一个字符串变量,实际就是一个函数体,通过typeof得到function属性;
---------------------函数就是类----------------

原文地址:https://www.cnblogs.com/pojia/p/389339.html