当前位置:编程学习 > JAVA >>

javascript定义对象的方式

javascript 定义对象的方式,有6 种:
1.1在已有对象上添加属性
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>New Web Project</title>
    </head>
    <script type="text/javascript">
        //同过已有对象,扩充属性 
        var object =new Object(); 
        object.name="zhangsan"; 
        object.sayName=function(name){ 
            this.name=name; 
            alert(this.name); 
        } 
        object.sayName("lisi"); 
     
    </script>
</html>
1.2 工厂方式创建对象
 
<script type="text/javascript">
        //工厂方式 创建对象 
        function createObject(){ 
            var object = new Object(); 
            object.username = "hw"; 
            object.password = "810068"; 
            object.get = function(){ 
                alert(this.username + " , " + this.password); 
            } 
            return object; 
        } 
         
        var object1 = createObject(); 
        var object2 = createObject(); 
        object1.get(); 
    </script>
 
<script type="text/javascript">
        //工厂方式 创建对象 
        function createObject(name){ 
            var object = new Object(); 
            object.username = name; 
            object.password = "81"; 
            object.get = function(){ 
                alert(this.username + " , " + this.password); 
            } 
            return object; 
        } 
         
        var object1 = createObject("黄威"); 
        var object2 = createObject("付攀"); 
        object1.get(); 
         
    </script>
如何让一个函数对象被多个对象所共享,而不是每一个对象拥有一个函数对象?
方法:把函数放在外面。请看下面的代码:
 
<script type="text/javascript">
        //使用工厂方法,创建对象 
        /* 让一个函数对象被多个对象所共享,而不是每一个对象拥有一个函数对象 :把方法放在外面*/ 
        function get(){ 
            alert(this.username + " , " + this.password); 
        } 
         
        function createObject(name, password){ 
            var object = new Object(); 
            object.username = name; 
            object.password = password; 
            object.get = get; 
            return object; 
        } 
         
        var object1 = createObject("黄威", "456"); 
        var object2 = createObject("付攀", "123"); 
        object1.get(); 
    </script>

 
1.3 构造函数方式(使用构造方法)
 
<script type="text/javascript">
        function Person(){ 
            //在执行第一行代码前,js引擎会为我们生成一个对象 
            this.username="hw"; 
            this.password="root"; 
            this.getInfo=function(){ 
                alert(this.username + " , " + this.password); 
            } 
            //此处有一个隐藏的return 语句,用于将之前生成的对象返回。 
        } 
        var person=new Person(); 
        person.getInfo(); 
     
    </script>
 
<script type="text/javascript">
        function Person(name, password){ 
            //在执行第一行代码前,js引擎会为我们生成一个对象 
            this.username = name; 
      &

补充:web前端 , JavaScript ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,