第67天:面向对象的声明、封装

一、声明对象

有两种声明对象的方式.

1、var obj = new Object();    

但是我们更提倡用第二种方法: 字面量式声明对象

 2、var obj  = {};

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Title</title>
 6 </head>
 7 <body>
 8 
 9 </body>
10 </html>
11 <script>
12     //声明对象
13     //var obj=new Object();
14     var obj={};
15     obj.name="刘德华";
16     obj.age=55;
17     obj.showName=function(){//声明方法  方法有括号
18         alert("我是刘德华");
19     }
20     obj.showAge=function(){
21         alert("我今年55岁了");
22     }
23     console.log(obj.name);//调用属性
24     console.log(obj.age);
25     obj.showName();//调用方法
26     obj.showAge();
27 </script>

二、封装对象

 1 <script>
 2     function Person(name,age){
 3         var obj={};
 4         obj.name=name;
 5         obj.age=age;
 6         obj.showName=function(){
 7             alert("我的名字是"+name);
 8         }
 9         obj.showAge=function(){
10             alert("我的年龄是"+age);
11         }
12         return obj;//返回对象
13     }
14     var xiaoming=Person("小明",12);
15     console.log(xiaoming.name);
16     console.log(xiaoming.age);
17     xiaoming.showName();
18     xiaoming.age();
19 </script>

三、创建实例对象

 1 <script>
 2     function Person(name,age){//构造函数
 3         this.name=name;
 4         this.age=age;
 5         this.showName=function(){
 6             alert("我的名字是"+name);
 7         }
 8         this.showAge=function(){
 9             alert("我的年龄是"+age);
10         }
11     }
12     var demo=new Person("刘德华",18);//demo是实例对象
13     console.log(demo.name);//提倡这种调用方法
14     console.log(demo["name"]);
15     console.log(demo.age);
16     demo.showName();
17 </script>
原文地址:https://www.cnblogs.com/le220/p/7748318.html