雪黛缘
-寻找彼此的四叶草...zhuibobo
posts - 17,  comments - 62,  trackbacks - 0
在javaScript下并不像其他面向对象的语言那样有严格的没定义方法.规定的应该只是函数的定义function()
以下是几种看到过的类定义的方式:
工厂方式:
<script language="javascript" type="text/javascript">
        function Personsfactory(name,age)
        {
            var person=new Object();
            person.Name=name;
            person.Age=age;
            person.Show=function()
            {
                alert(this.Name+this.Age);
            }
            return person;
        }
        var personeD=Personsfactory('do',10);
        var personeZ=Personsfactory('zb',11);
        personeD.Show();
        personeZ.Show();
    </script>
构造函数方式:
<script language="javascript" type="text/javascript">
        function Person(name,age)
        {
            this.Name=name;
            this.Age=age;
            this.Show=function()
            {
                alert(this.Name+this.Age);
            }
        }
        var personeD=new Person('do',10);
        var personeZ=new Person('zb',11);
        personeD.Show();
        personeZ.Show();
    </script>
构造函数&原型方式:
<script type="text/javascript" language="javascript">
        function Person(name,age)
        {
            this.Name=name;
            this.Age=age;
        }
        Person.prototype.Show=function()
        {
            alert(this.Name+this.Age);
        }
        var personeD=new Person('do',10);
        var personeZ=new Person('zb',11);
        personeD.Show();
        personeZ.Show();
    </script>
动态的原型方式:
<script type="text/javascript" language="javascript">
        function Person(a,b)
        {
            this.Name=a;
            this.Age=b;
            if(typeof Person._initialize=="undefined")
            {
                Person.prototype.Show=function()
                {
                    alert(this.Name+this.Age);
                }
            }
            Person._initialize=true;
        }
        var personeD=new Person('do',10);
        var personeZ=new Person('zb',11);
        personeD.Show();
        personeZ.Show();
    </script>
构造函数&原型方式和动态的原型方式是属于比较常用的js下的类定义方式了.
现在还有各种的框架提供了不同的类的定义方法:
还接触的比较少,接触过的prototype的类定义方法为:
<script language="javascript" type="text/javascript">
        var Person=Class.create();
        Person.prototype={
        initialize:function(name,age)
        {
            this.Name=name;
            this.Age=age;
        },
        Show:function()
        {
            alert(this.Name+this.Age);
        }
        }
        var test=new Person('Do','11');
        test.Show();
</script>
posted on 2007-12-02 19:59 zhuibobo 阅读(39) 评论(3)  编辑 收藏 网摘

FeedBack:
2007-12-05 19:57 | asheng      
呵呵
学习了 都转过来了 啊 (:
  回复  引用  查看    
2007-12-05 20:00 | asheng      
我上次发给你的那个 也很好的  专门讲函数的 那篇
  回复  引用  查看    
2007-12-05 20:02 | asheng      
如何提高网页的效率(上篇)——提高网页效率的14条准则

这个你也看了啊~呵这个人写的都比较好
他不是为了写博客而写 是为了让更多人提高水平而写 值得一看
  回复  引用  查看    

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
Google站内搜索

相关文章:

相关链接:


 

<2008年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

与我联系

搜索

 

常用链接

留言簿(1)

我参加的小组

随笔档案(18)

文章分类(6)

收藏夹(2)

最新评论

阅读排行榜

评论排行榜