对象
一、创建对象的方法
1.利用对象字面量创建对象 {}
> - // var obj = {} //创建了一个空对象
> var obj = {
> uname: 'xx',
> age: 18,
> sex: '',
> sayHi:function(){
> console.log('hi~')
> }
> }
> // (1.)里面的属性或方法采用键值对的形式 键 属性名 : 值 属性值
> // (2.)多个属性或方法中间用都好隔开
> // (3.)方法冒号后面跟的是一个匿名函数
> // 2.使用对象
> // (1)调用对象的属性 我们采取 对象名.属性名
> console.log(obj.uname);
> // (2)调用属性还有一种方法 对象名['属性名']
> console.log(obj['age']);
> // (3)调用对象的方法 sayHi 对象名.方法名() 千万别忘记添加小括号
> obj.sayHi();`
2. 利用new Object 创建对象
// 利用 new Object创建对象
var obj = new Object();//创建了一个空对象
obj.uname = '张闪灯';
obj.age = 18;
obj.sayHi = function(){
console.log('hi~~');
}
// (1) 我们是利用等号 = 赋值的方法 添加对象的属性和方法
// (2)每个属性和方法之间利用 分号 结束
3. 利用构造函数创建对象
// 利用函数的方法,重复创建相同的代码
// 构造函数就把对象里面一些相同的属性和方法抽象出来封装到函数里面
// 利用构造函数创建对象
// 创建四大天王的对象 相同的属性:名字、年龄、性别、相同的方法
//格式:
// function 构造函数名(){
// this.属性 = 值;
// this.方法 = function(){}
// }
// // 调用
// new 构造函数名();
function Star(uname,age,sex){
this.name = uname;
this.age = age;
this.sex = sex;
this.sing = function(sang){
console.log(sang);
}
}
var ldh = new Star('刘德华',18,'男'); //调用函数返回的是一个对象
console.log(ldh.name);
console.log(ldh['sex']);
ldh.sing('冰雨');
var zxy = new Star('张学友',19,'男');
console.log(zxy.name);
console.log(zxy['age']);
zxy.sing('李春兰');
注意!
1、构造函数名字首字母要大写
2、构造函数不需要return就可以返回结果
3、我们调用构造函数 必须使用new
4、我们只要new Star() 调用函数就创建了一个对象
5、我们的属性和方法前必须添加this
二、new关键字
new关键字的执行过程
- new构造函数可以在内存中创建一个空的对象
- this就会指向刚才创建的空对象
- 执行构造函数里面的代码 给这个空对象添加属性和方法
- 返回这个对象
三、遍历对象
- for…in…
// 遍历对象
var obj = {
name:'ly',
age:20,
sex:'女',
fn:function(){
console.log('cc')
}
}
// for in 遍历对象
// for (变量 in 对象)
for (var k in obj){
console.log(k); //k 变量 输出的是属性名 name,age,sex,fn
console.log(obj[k