定义:一组无序的相关属性和方法的集合,如数组,字符串,函数等 组成: 对象由属性和方法组成(可以先理解为变量和函数,后面会讲到对象属性和方法与变量和函数的区别)
方法一 :字面量创建对象
var dog = { dogName: '可可', type: '阿拉斯加犬', age: '5岁', color: '棕红色', skill: function(){ console.log('汪汪汪'); } } console.log(dog.dogName); console.log(dog['type']); dog.skill();方法二:利用 new Object创建对象
var obj = new Object();//创建了一个空对象方法三:利用构造函数创建对象
构造函数:把对象里面相同的属性和方法封装到函数里面 构造函数创建的对象可以称之为实例或者对象的实例化 (构造函数泛指的是一大类,类似java中的class)
构造函数注意点:
构造函数可以复用,能创建多个对象,字面量和new只能创建一个对象构造函数的函数名首字母要大写构造函数不需要返回return就可以返回结果,调用构造函数返回的是一个对象,但是构造函数中的方法需要返回值(下面讲到的)属性和方法前面必须要加this.调用构造函数必须使用newnew关键字是如何实现创建对象的:
new会先在内存中创建一个空的对象,构造函数中的this都会指向这个空对象执行构造函数中的代码,给空对象添加属性和方法返回对象 function Movies(yourName,age,sex){ this.name = yourName; this.age = age; this.sex = sex; this.skill = function(skills){ console.log(skills); } } var cy = new Movies('杨杨',13,'男'); console.log(cy.age); console.log(cy['sex']); cy.skill('hulalala');相同点: 都是用来保存数据的。
区别: 变量: 单独声明并赋值,使用的时候直接写变量名,单独存在。 对象的属性: 在对象里面不需要声明,使用的时候必须是对象.属性。
相同点:都是实现某种功能做某件事情。 区别: 函数: 单独声明,并且调用是单独存在的。 对象的方法: 调用的时候,对象.方法( )。