首页 > 编程语言 > 详细

干货!JavaScript创建对象的3种方式

时间:2020-11-19 11:39:45      阅读:25      评论:0      收藏:0      [点我收藏+]

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

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

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

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

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

 1 例子:
 2             //自定义构造函数
 3             function Person(name,age) {
 4                 this.name = name;
 5                 this.age = age;
 6                 this.sayHi=function () {
 7                     console.log("我叫:"+this.name+",年龄是:"+this.age);
 8                 };
 9             }
10     
11             //自定义构造函数创建对象:先自定义一个构造函数,然后new创建对象
12             var obj=new Person("小明",18);
13             console.log(obj.name);
14             console.log(obj.age);
15             obj.sayHi();
16     
17             var obj2=new Person("小红",20);
18             console.log(obj2.name);
19             console.log(obj2.age);
20             obj2.sayHi();

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

 1 例子:
 2 //变量,数组 字面量方式创建的创建
 3 /*    var num = 10;
 4       var array = []; 
 5 */
 6                  var obj = {};   //空对象
 7                  //添加属性
 8                  obj.name= "小白";
 9                  obj.age = 20;
10                  //添加方法
11                  obj.sayHi = function () {
12                        console.log("我是"+this.name+"今年"+this.age+"岁")
13                  };      //末尾记得加 ;
14                  obj.sayHi();
15 
16 
17 优化后的写法:
18                  /*多个属性方法用逗号隔开,最后的不用加逗号*/
19                 var obj = {
20                     name:"小明",
21                     age:18,
22                     sayHi:function () {
23                         console.log("我是"+this.name+"今年"+this.age+"岁");
24                     },
25                     eat:function () {
26                         console.log("吃了");
27                     }
28                 };
29                 obj.sayHi();
30                 obj.eat();

 

干货!JavaScript创建对象的3种方式

原文:https://www.cnblogs.com/anji/p/14004187.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!