JavaScript——创建对象
<script type="text/javascript">
//声明变量的首字母是小写
//1.对象字面量
/*var person = {
name:"张三三";
age:20;
study:function(){
}
};
*/
//2.构造函数首字母要大写,实例化对象
function Person(name){
this.name = name;
}
var p = new Person("人1");
p.age = 20;
p.study=function(){
alert("好好学习");
}
//p.study();
//alert(p.age);
//3.1字面量函数
var student = {
name:"zss",
age:20,
teacher:new Teacher("chenjun","java")
}
//alert(student.teacher.name);
//3.2字面量+构造器函数
var student = {
name : "张三三",
age : 20,
teacher:new Teacher("chenjun","java")//实例化函数
}
function Teacher(name,major){
this.name = name; //这里的this指向的是new Teacher出来的对象
this.major = major;
}
var t = new Teacher("zss",20);
t.height = 180; //利用javascript的动态性来追加成员
//在student里调用teacher里的方法及值
//alert(student.teacher.name);
//alert(student["teacher"].name);//对象.属性
//alert(student["teacher"]["name"]);
//静态方法:
Person.sp ="静态属性";
Person.sp2 = "静态属性2";
Person.sm1 = function(){
alert('静态方法');
}
alert(Person.sp2);
Person.sm1();
字面量和构造函数类型的区别:
1)对象自变量只能修改属性和值,构造函数可以创建出很多对象,函数里面可以写很多代码(业务逻辑)
自变量函数直接调用,构造函数是用来new(实例化);
</script>