1.对象是一个具体的事物,比如一本书,一个人,一辆汽车,一张网页等 在JS中,对象是一组无序的相关属性和方法的集合。即对象是由属性和方法组成的。
属性:事物的特性,常用名词方法:事物的行为,常用动词1.利用字面量创建对象 对象字面量:就是花括号{}里面包含了表达这个对象的属性和方法。
(1)利用对象字面量创建对象{}
var obj = {}; //创建了一个空的对象 var obj = { uname: '张三', age: 18, sex: '男', sayHi: function(){ console.log('Hi~'); } }注意:
里面的属性或者方法采用键值对的形式,即 键 属性名 : 值 属性值多个属性或者方法中间用逗号隔开方法冒号后面跟的是一个匿名函数(2)使用对象
调用对象的属性,采取对象名.属性名console.log(obj.uname);调用属性还有一种方法,对象名[‘属性名’] console.log(obj['sex']);调用对象的方法,对象名.方法名() obj.sayHi();2.利用new Object创建对象
var obj = new Object();//创建了一个空的对象 obj.uname = '张三'; obj.age = 18; obj.sex = '男'; obj.sayHi = function(){ console.log('Hi~'); } 利用等号赋值的方法,添加对象的属性和方法每个属性和方法之间,用分号结束。3.构造函数创建对象
构造函数:其内部封装的不是普通代码,而是对象。把对象里面的一些相同的属性和方法抽象出来封装到函数里面。
构造函数的语法规范:
function 构造函数名(){ this.属性 = 值; this.方法 = function(){} } new 构造函数名(); //调用构造函数例如:
function Star(uname,age,sex){ this.name = uname; this.age = age; this.sex = sex; } var zs = new Star('张三',18,'男'); //调用构造函数返回的是一个对象 console.log(zs.name);注意:
构造函数名,首字母要大写构造函数不需要return,就可以返回结果调用构造函数必须使用new关键字只要调用new Star(),构造函数就创建了一个对象属性和方法前面必须添加this1.变量和属性的相同点在于,他们都是用来存储数据的
变量:单独声明并进行赋值,使用时直接写变量名,即单独存在属性:属性是存在于对象中的,在对象里面不需要声明,且使用时必须是:对象.属性2.函数和方法的相同点在于,都是实现某种功能
函数:单独声明的,并且调用时直接用 函数名() ,即单独存在方法:方法是存在于对象中的,且调用时必须是:对象.方法()for…in语句可以用于对数组或者对象的属性进行循环操作for (变量 in 对象){ }
例如:
var obj = { name: '张三', age: 18, sex: '男' } for(var k in obj){ console.log(k); //此时只能输出属性名 console.log(obj[k]); //得到的是属性值 }