Java Script面向对象(一)

JavaScript中的面向对象【一】

 

创建一个对象

    
1
2
3
4
var MyObject = {
       name:'John',
       age:18
}

 

  你可以看到:
  • 对象的名字为MyObject
  • 用{和}来定义对象
  • 通过逗号来分隔包含在对象中的元素(叫做属性)
  • 键值对通过分号分隔,如key:value

 

  对象可以包含任何数据,当然也可以包含其它对象。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var MyObject02 = {
     name: 'John',
     age: 18,
     say: function () {
         return this.name + '在说话°';
     },
     eat: function (name) {
         return name + '在吃饭';
     },
     myObj: {
         name: 'Jack',
         age: 20
     }
}

  

访问对象的属性

  有 2 种方式可以访问一个对象的属性:

    1. 用方括号的形式,比如MyObject['age']
    2. 使用句号的形式,比如MyObject.name
 
  为了访问包含在myObj对象中的name属性,你可以:
  
1
2
3
4
5
6
MyObject02.myObj.name
//或者使用方括号的形式:
MyObject02['myObj']['name']
//句号形式与方括号的混合形式的使用也是可以的:
MyObject02['myObj'].name
MyObject02.myObj['name']

  一个使用方括号形式的情况是,在你想访问这个属性的时候预先不知道属性的名字是什么。而是在运行时定义在一个变量中:

1
2
var name = 'name';
alert(MyObject02.myObj[name]);

 

调用对象的方法

  因为方法跟属性是一样的,只不过它是一个函数而已,可以像访问属性一样的访问方法:
1
2
3
MyObject02.say()
MyObject02.eat('Mary')
MyObject02['eat']('Mary')

  

改变对象属性/方法

  JavaScript 是一个动态语言;它可以允许你在任何时候改变已存在对象的属性和方法。这也包括添加新的属性或者删除它们。
  添加
  • 对象.属性 = value;
  • 对象.方法 = function(){….}
  • 对象.对象 = {…}
  删除
  • delete 对象.属性/方法/对象
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
  //定义一个空的对象
  var MyObject = {};
  //访问对象不存在的属性,返回结果是undefined
  alert(MyObject.name);
 
  //给对象添加一个属性
  MyObject.name = 'John';
  //给对象添加一个方法
  MyObject.say = function () {
      return this.name + '在说话';
  };
  //给对象添加一个对象
  MyObject.myObj = {
      name:'Jack',
      age:18
  }
 
  //访问对象
alert(MyObject.name);
  alert(MyObject.say());
  alert(MyObject.myObj.name);
 
  //删除对象的属性
delete MyObject.name;
  //访问已删除的属性将返回undefined
  alert(MyObject.name);
  alert(MyObject.say());
原文地址:https://www.cnblogs.com/sungangmr/p/3216073.html