天天看点

我的Javascript学习-------基础篇(八)(关于对象的学习)

文章目录

  • ​​对象​​
  • ​​what is 对象?​​
  • ​​how to create 对象?​​
  • ​​第一种​​
  • ​​利用 new Object 创建对象​​
  • ​​利用构造函数创建对象​​
  • ​​遍历对象​​

对象

what is 对象?

  • 在 JavaScript 中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等。
  • 对象是由属性和方法组成的。

how to create 对象?

第一种

给个简单例子:

var person = {
        name : 'hgg',
        age : 20,
        sing : function(){
            alert('我是DJDJDJDJD~');
        }
    };      

上述代码中person即是创建的对象。

  • 访问对象的属性
  • 对象里面的属性调用 : 对象.属性名
  • 对象里面属性的另一种调用方式 : 对象[‘属性名’]
.log(person.name)     // 调用名字属性
      console.log(person['name'])  // 调用名字属性      
  • 调用对象的方法
  • 对象里面的方法调用:对象.方法名() ,注意这个方法名字后面一定加括号
.sing();      
  • 变量、属性、函数、方法的小总结

属性是对象的一部分,但是变量不是对象的一部分(敲黑板),变量是单独存储数据的容器

方法是对象的一部分,但是函数不是对象的一部分(敲黑板),函数是单独封装操作的容器

利用 new Object 创建对象

  • 创建空对象
var ps = new Obect();      

通过内置构造函数Object创建对象,此时ps变量已经保存了创建出来的空对象

  • 给空对象添加属性和方法
  • 通过对象操作属性和方法的方式,来为对象增加属性和方法

    示例代码如下:

ps.name = 'pink';
ps.age = 18;
ps.say = function(){
    alert('DJDJDJD~');
}      

利用构造函数创建对象

  • 构造函数的封装格式:
function 构造函数名(形参1,形参2,形参3) {
           this.属性名1 = 参数1;
           this.属性名2 = 参数2;
           this.属性名3 = 参数3;
           this.方法名 = 函数体;
      }      
  • 构造函数的调用格式
var obj = new 构造函数名(实参1,实参2,实参3)      

给个示例:

function Person(uname, age) {
     this.name = uname;
     this.age = age;
     this.sing = function(sang) {
         console.log(sang);
  }
}
var xgg = new Person('小哥哥', 20, '男');      

关于这个过程的总结:

  • 以上代码中,obj即接收到构造函数创建出来的对象。
  • new 构造函数可以在内存中创建了一个空的对象
  • this 就会指向刚才创建的空对象
  • 执行构造函数里面的代码 给这个空对象添加属性和方法
  • 返回这个对象
  • 敲黑板!!! 构造函数约定首字母大写,不过你不这样也行,但是规定嘛,还是要遵守滴对吧!!!

遍历对象

for (变量 in 对象名字) {
      // 在此执行代码
  }      
for (var i in xgg) {
      console.log(i);      // 这里的 i 是属性名
      console.log(xgg[i]); // 这里的 obj[i] 是属性值
  }      

继续阅读