精华内容
下载资源
问答
  • JavaScript创建对象
    千次阅读
    2016-04-29 00:13:27

    JavaScript创建对象


    1、实现源码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>JavaScript创建对象</title>
    <script type="text/javascript">
    	 /**
    	  * 创建Person对象
    	  */
    	function Person(name,sex,age,addr)
    	{
    		this.name = name;
    		this.sex = sex;
    		this.age = age;
    		this.date = obDate();
    		this.addr = addr;
    		this.findInfo = function(){
    			name = "姓名:" + name + "<br>";
    			sex = "性别:" + sex + "<br>";
    			age = "年龄:" + age + "<br>";
    			date = "生日:" + obDate() + "<br>";
    			addr = "地址:" + addr;
    			document.writeln(name,sex,age,date,addr);
    		};
    	}
    	
    	/**
    	 * 获取现在日期
    	 */
    	function obDate()
    	{
    		var date = new Date();
    		var year = date.getFullYear();
    		var month = date.getMonth() + 1;
    		var day = date.getDate();
    		var thisDate = year + "-" + (month<10?"0"+month:month) + "-" + (day<10?"0"+day:day);	
    		
    		return thisDate;
    	}
    	
    	You = new Person("You","男","23","湖北省武汉市");
    	You.findInfo();
    </script>
    </head>
    
    <body>
    </body>
    </html>
    

    2、实现结果

    姓名:You
    性别:男
    年龄:23
    生日:2016-04-29
    地址:湖北省武汉市 


    更多相关内容
  • 本篇文章主要介绍了JavaScript创建对象的多种方式以及优缺点,主要介绍了5种方式,有兴趣的可以了解下
  • 主要介绍了JavaScript创建对象方法,结合实例形式总结了javascript创建对象的基本原理及使用工厂模式、构造函数模式与原型模式创建对象的相关实现技巧,需要的朋友可以参考下
  • 主要介绍了JavaScript创建对象的常用方式,结合实例形式总结分析了javascript面向对象程序设计中对象创建的常见方式、相关操作技巧与注意事项,需要的朋友可以参考下
  • JavaScript创建对象的方法有很多种,本文给大家介绍javascript创建对象的八种方法,对javascript创建对象感兴趣的朋友可以参考下本
  • 主要介绍了JavaScript创建对象的方式,结合实例形式总结分析了四种创建对象的方式,并附带分析了JavaScript对象复制的技巧,需要的朋友可以参考下
  • 跟我学习javascript创建对象(类)的8种方法,每一种方法都有详细的介绍,不知道javascript如何创建对象的朋友,不要错过这篇文章。
  • JavaScript创建对象的4种方法

    千次阅读 多人点赞 2018-11-28 15:02:24
    JavaScript 创建对象的4种方法 所谓对象就是用来帮助你完成一些事情是,对象是有特征和行为的,是具体特指的某一个事物。使用对象可以使程序更加整洁 通过Object()方法来创建 Object()是JavaScript内部的对象...

    JavaScript 创建对象的4种方法
    所谓对象就是用来帮助你完成一些事情是,对象是有特征和行为的,是具体特指的某一个事物。使用对象可以使程序更加整洁

    1. 通过Object()方法来创建
      Object()是JavaScript内部的对象,使用Object创建对象的语法:
      在这里插入图片描述
      我们通过Object创建的一个Dog对象,这个对象有name,color,eat属性;并且给这个对象定义了两个方法,因此我们想用这两个方法时可以直接通过 Dog.describe() Dog.language() 来访问,即 对象.方法
      注意:注意这里不能用this.name 应该用Dog.name因为Object()是一个对象,我们的Dog也是创建出来的一个对象,所以用this会是undefined,但是Dog这个describe()方法中使用this就可以,因为是用过这个Dog对象构造出来的函数

    2. 同过字面量法创建对象
      var 对象={name:“小明”,age:20,sex:“男”…} 这是字面量表示法的语法 ,缺点:一次性对象,不方便修改,不利于提高效率,一般不建议使用
      在这里插入图片描述
      在这里插入图片描述
      优化版的创建对象,对象中的属性都是在一个整体中,便于访问加粗样式

    3. 通过自定义函数创建对象:就是自己定义一个函数,然后赋予它对象的思想。这个函数的名字首字母需要是大写的
      要创建Image的新实例,必须要使用new 操作符。以这种方式调用构造函数实际上会经历一下4个步骤
      (1)创建一个新对象,在内存中开辟一个空闲的空间
      (2)将构造函数的作用域个给新对象(因此this就指向了这个新对象)
      (3)执行构造函数中的代码(为这个新对象添加属性)
      (4)返回新对象
      在这里插入图片描述
      优点:提高代码复用率,代码可以灵活调用,方便修改,自己传的参数是什么就是什么, 既解决的重复实例化的问题又解决了对象识别的问题
      缺点:没有显示的创建对象,直接将属性和方法赋给了this对象,没有return语句

    4. 通过工厂模式创建对象
      在这里插入图片描述
      语法:function create 对象名() 这里我们用Object能够根据接受的参数来构建一个包含所有必要信息的 Object对象。可以无数次的调用这个函数,而每次它都会返回一个包含三个属性一个方法的对象。工厂模式虽然解决了创建多个相似对象的问题,但是却没有解决对象识别的问题(即怎样知道一个对象的类型)

    展开全文
  • 必知!JavaScript创建对象的三种方式

    千次阅读 2019-07-31 14:34:33
    方式1:调用系统的构造函数创建对象 表达式: var 变量名= new Object(); 例子: //实例化对象,创建对象 var obj = new Object(); //对象有特征和行为 (属性和方法) //添加属性-----如何添加属性? 对象...

    方式1:调用系统的构造函数创建对象

    表达式: var 变量名= new Object();

    例子:
    			//实例化对象,创建对象
    			var obj = new Object();
    			//对象有特征和行为 (属性和方法)
    			//添加属性-----如何添加属性?          对象.名字=值;
    			obj.name = "小明";
    			obj.age = 38;
    			obj.sex = "女";
    			//添加方法----如何添加方法?       对象.名字=函数;   (匿名函数)
    			obj.eat = function () {
    			       console.log("吃饭,这是一个方法");
    			 };
    			obj.play = function () {
    			            console.log("我喜欢玩飞机模型");
    			 };
    			console.log(obj.name);//获取--输出了
    			//方法的调用
    			 obj.eat();
    			 obj.play();
    

    方式2:自定义构造函数创建对象

    表达式: var 变量名 = new 自定义构造函数
    函数和构造函数的区别: 名字是不是大写(构造函数首字母是大写的)

    例子:
    	        //自定义构造函数
    	        function Person(name,age) {
    	            this.name = name;
    	            this.age = age;
    	            this.sayHi=function () {
    	                console.log("我叫:"+this.name+",年龄是:"+this.age);
    	            };
    	        }
    	
    	        //自定义构造函数创建对象:先自定义一个构造函数,然后new创建对象
    	        var obj=new Person("小明",18);
    	        console.log(obj.name);
    	        console.log(obj.age);
    	        obj.sayHi();
    	
    	        var obj2=new Person("小红",20);
    	        console.log(obj2.name);
    	        console.log(obj2.age);
    	        obj2.sayHi();
    

    方式3:字面量的方式创建对象

    例子:
    //变量,数组 字面量方式创建的创建
    /*    var num = 10;
          var array = []; 
    */
    				 var obj = {};   //空对象
    				 //添加属性
    				 obj.name= "小白";
    				 obj.age = 20;
    				 //添加方法
    				 obj.sayHi = function () {
    				       console.log("我是"+this.name+"今年"+this.age+"岁")
    				 };      //末尾记得加 ;
    				 obj.sayHi();
    
    
    优化后的写法:
    				 /*多个属性方法用逗号隔开,最后的不用加逗号*/
    		        var obj = {
    		            name:"小明",
    		            age:18,
    		            sayHi:function () {
    		                console.log("我是"+this.name+"今年"+this.age+"岁");
    		            },
    		            eat:function () {
    		                console.log("吃了");
    		            }
    		        };
    		        obj.sayHi();
    		        obj.eat();
    
    展开全文
  • JavaScript 创建对象的几种方式

    千次阅读 2018-07-13 09:43:41
    这里创建对象,主要介绍三种方式:工厂模式、构造函数模式、原型模式、组合使用构造函数模式和原型模式。1、工厂模式 工厂模式是用函数来封装创建对象的细节,在函数里面创建对象并返回对象。function createPerson...
    这里创建对象,主要介绍四种方式: 工厂模式、构造函数模式、原型模式、组合使用构造函数模式和原型 模式

    1、工厂模式

     工厂模式是用函数来封装创建对象的细节,在函数里面创建对象并返回对象,就有些像工厂里的流水线一样。

    function createPerson(name,age,job){
        var o = new Object();
        o.name = name;
        o.age = age;
        o.job = job;
        o.sayname = function(){
            alert(this.name);
        };
        return o;
    }
    var person1 = createPerson("a",29,"cc");
    var person2 = createPerson("b",26,"cc"); 

    但是工厂模式有个缺点,就是对象识别问题,即它不知道一个对象的类型。

    2、构造函数模式

    构造函数模式,即通过给构造函数传递不同的参数,然后调用构造函数来创建不同对象。

    function Person(name,age,job){
        this.name = name;
        this.age = age;
        this.job = job;
        this.sayname = function(){
            alert(this.name);
        };
    }
    var person1 = new Person("a",29,"cc");
    var person2 = new Person("b",26,"cc");

    使用自定义的构造函数,可以将它的实例标识为一种特定的类型,这正是构造函数模式胜过工厂模式的地方。

    比如(instanceof用于检测对象类型):

    person1 instanceof Person  //true    这里可以看到person1也是Person的实例,而工厂模式没有能具体检测对象类型的这一特定
    person1 instanceof Object //true    所有对象均继承自Object

    构造函数模式的主要问题,就是每个方法都要在每个实例对象上重新创建一遍,j即使是同名方法或者两个方法的作用一样,而不同实例对象上的同名方法其实是不一样的,这样就造成了一种冗余,比如:

    person1.sayname != person2.sayname

    3、原型模式

    有关原型和原型链的知识已经在点击打开链接介绍过了,这里不作过多介绍。

    使用原型对象的好处就是,可以让所有对象实例共享它所包含的属性和方法。

    function Person(){}
    Person.prototype.name="a";
    Person.prototype.age="29";
    Person.prototype.job="cc";
    Person.prototype.sayname = function(){
            alert(this.name);
    };
    var person1 = new Person();
    var person2 = new Person();
    这样person1.sayname == person2.sayname
    这样一来,所有的属性和方法都是大家(所有实例)共享的了,换句话说,person1和person2访问的sayname和name等 都是同一个。

    还有就是重写原型的时候,切断了现有原型与任何之前已存在的对象实例之间的联系,它们引用的仍是最初的原型。可以通过在重写原型里添加constructor:Person来建立新联系。

    原型模式的问题就是共享问题,在实例或原型上改变一下,在其他实例中都会相应的改变。这样我们引入组合使用构造函数模式和原型模式。

    4、组合使用构造函数模式和原型模式

    组合使用中,构造函数模式用于定义实例自己的属性,原型模式用于定于方法和共享的属性。
    function Person(name,age,job){
        this.name = name;
        this.age = age;
        this.job = job;
    }
    Person.prototype = {
        constructor: Person,
        sayname: function(){
            alert(this.name);
        }
    }
    var person1 = new Person("a",29,"cc");
    var person2 = new Person("b",26,"cc");

    这种构造函数与原型混合的模式,是目前使用较多的。其它创建对象的方式还有动态原型模式、寄生构造函数模式、稳妥构造函数模式。


    展开全文
  • 主要介绍了JavaScript创建字典对象(dictionary)实例,本文直接给出了实现的源码,并给出了使用示例,需要的朋友可以参考下
  • 主要介绍了JavaScript创建一个object对象并操作对象属性的用法,实例分析了javascript使用object类定义对象及属性的用法,需要的朋友可以参考下
  • 主要介绍了JavaScript基于面向对象之创建对象,详细的分析面向对象的原型方式以及其他综合的方式,感兴趣的小伙伴们可以参考一下
  • 主要为大家介绍了创建对象的9种方式,帮助大家更好地学习javascript面向对象,感兴趣的小伙伴们可以参考一下
  • function People(name, age){ // 如果this是People的实例 我们才可以使用this来赋值 if(this instanceof People){ this.name = name; this.age = age; }else{ // 不管什么方式调用,只要你的this不是People的...
  • 主要汇总介绍了Javascript创建自定义对象的方法,需要的朋友可以参考下
  • 主要介绍了javascript面向对象创建对象的方式,结合实例形式总结分析了javascript常见的7种创建对象的方式,需要的朋友可以参考下
  • **JavaScript创建对象模式: 对象字面量 工厂模式 构造函数模式 原型模式 结合构造函数和原型模式 原型动态模式 ** 面向对象的语言大都有一个类的概念,通过类可以创建多个具有相同方法和属性的对象。虽然从技术上...
  • 主要介绍了JavaScript面向对象程序设计创建对象的方法,结合实例形式分析了javascript使用object构造函数和对象字面量来创建对象的相关操作技巧,需要的朋友可以参考下
  • 主要介绍了JavaScript对象创建模式,结合实例形式总结分析了JavaScript常见的对象创建模式,包括工厂模式、构造函数模式、原型模式、动态原型模式、寄生构造函数模式、稳妥构造函数模式等,需要的朋友可以参考下
  • JavaScript对象创建有以下几种方式: (1)使用内置对象 (2)使用JSON符号 (3)自定义对象构造 一、使用内置对象 JavaScript可用的内置对象可分为两种: 1,JavaScript语言原生对象(语言级对象),如String、...
  • JavaScript 创建对象工厂模式构造函数模式三级目录 总结JS创建对象的几个模式及各自优缺点 工厂模式 function createPerson(name,age,job){ var obj = new Object(); obj.name = name; obj.age = age; obj.job =...
  • JavaScript创建对象模式

    千次阅读 2017-03-15 17:26:37
    要在JavaScript中创建一个对象,最简单的是直接使用字面量来创建,可是这么做在对象较多时会产生大量重复的代码,由此引发了创建对象模式的产生。这些模式就是用来产生对象的。工厂模式批量产生js对象function ...
  • 使用Javascript创建类和对象的方法有很多,现在就来列举一下:1、原始的创建方法,2、工厂方法模式,3、构造方法模式,4、动态原型方法。下面我们就来通过实例详细看下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 598,590
精华内容 239,436
关键字:

javascript创建对象

java 订阅