创建对象的三种方式:
1.利用 字面量 创建对象 // 固定写法: var 对象名 = { 属性名:属性值 }
var obj = {
// 属性名:属性值;
uname : "小A",
age : 18,
sayHi : function(){
console.log("hi~");
}
}
2.利用 new Object 创建对象 // 固定写法: var 对象名 = new Object( ) ;
var obj1 = new Object( );
obj1.uname = "小B";
obj1.age = 12 ;
sayHi=function(){
console.log(" hi~ ");
}
console.log( obj1.age);
obj1.sayHi();
3.利用 构造函数 创建对象 // 固定写法: function 构造函数名(){ } // 构造函数名字首字母大写
构造函数:把相同的属性和方法封装到函数中,一调用函数 就可以创建对象, 调用函数必须加 new 。
注意:
1.构造函数名字首字母要大写
2.构造函数不需要写return,就可以返回结果
3.我们调用 构造函数 必须使用 new
4.我们只要 new Obj( ) 调用函数 就创建一个对象 c1{ }
5.我们的属性和方法前面必须添加 this
案例:
function Obj( name,age,sex ){
this . name = name;
this . age = age;
this . sex = sex;
this . sing=function(sang){
console.log(sang);
}
}
var c1 = new Obi(" 小C",19,”女"); // 调用函数返回的是一个对象
console.log( c1.name ); // 小C
c1.sing("菠萝菠萝蜜")
注意:构造函数中的 new 关键字,new 在执行时会做四件事情:
1.在内存中创建一个新的空对象;
2.让 this 指向这个新的空对象;
3.执行构造函数里面的代码,给这个新的空对象添加属性和方法;
4.返回这个新对象(所以构造函数里面不需要 return)
遍历对象:
for(变量 in 对象名)
for( var k in Obj ){
console.log( k ); //获取的是对象中的属性名:name、age、sex
console.log( Obj [ k ] ); //获取的是对象的属性值:“小A”、18、“男”
}