1.什么是对象
在JavaScript中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串,数值,数组,函数等
对象是由属性和方法组成的。
- 属性:事物的特征,在对象中用属性来表示(常用名词)
- 方法:事物的行为,在对象中用方法来表示(常用动词)
2.创建对象
1.利用对象字面量创建对象
对象字面量:就是花括号{}里面包含了表达这个具体事物(对象)的属性和方法。
语法结构:
var 对象名={
属性1:属性值,
属性2:属性值,
属性3:属性值,
方法名:function(){
代码块;
}
}
代码:
<script>
var obj={
username : "杜林阳",
userage :18,
usersex :"男",
hi: function(){
console.log("hi");
}
}
console.log(obj.username);
console.log(obj['userage']);
obj.hi();
</script>
2.利用new object 创建对象
语法结构:
var 对象名=new object();
对象名.属性1=属性值;
对象名.属性2=属性值;
对象名.属性3=属性值;
对象名.方法名=function(){
代码块;
}
代码:
<script>
var people=new Object();
people.name="杜林阳";
people.age=18;
people.sex="男";
people.eat=function(){
console.log("我饿了,要吃饭");
}
console.log(people.name);
people.eat();
</script>
3.利用构造函数创还能对象
构造函数:是一种特殊的函数,主要用来初始化对象,即为对象成员变量赋初始值,他与new 运算符一起使用。气门可以吧对象中的一些公共的属性和方法抽取出来,然后封装到这个函数里面。
语法结构:
funcation 构造函数名(){
this.属性=属性值;
this.方法=function(){
代码块;
}
}
new 构造函数名();
代码:
<script>
function people(name,sex,age){
this.name=name;
this.sex=sex;
this.age=age;
this.sing=function(sang){
console.log(sang);
}
}
var zjl=new people("周杰伦","男",18);
console.log(zjl.name);
console.log(zjl['sex']);
zjl.sing("七里香");
</script>
3.new关键字
new在执行时会做四件事情:
- 在内存中创建一个新的空对象
- 让this指向这个新的对象
- 执行构造函数里面的代码,给这个新对象添加属性和方法
- 返回这个新对象(所以构造函数里面不需要return)