JavaScript基础之——对象
对象
- 在JS中,对象是一组无序的相关属性和方法的集合。所有的事物都是对象,即万物皆对象。
- 对象是由属性和方法组成的。
- 属性:事物的特征,在对象中用属性来表示。(常用名词表示)
- 方法:事物的行为,在对象中用方法来表示。(常用动词表示)
- 比如一个手机。大小、颜色、重量都是它的属性;而他的方法就是打电话、玩游戏。
- 对象的存在是为了更好地存储一组数据。对象中为每项数据设置了属性名称。这样在访问数据地时候数据会更语义化、数据结构更加清晰,表意明显,方便开发者使用。
数组和对象记录数据的方式。
数组
var arr = [‘张三疯’, ‘男', 128,154];
对象
var obj = {
"name":"张三疯",
"sex":"男",
"age":128,
"height":154
}
JS中的对象表达结构更清晰,更强大。
创建对象的三种方式
1.利用字面量创建对象
语法
var obj = {key:value,key2:value2...};
key键:相当于属性名
value值:相当于属性值。可以是任意类型的值(Number,String,Bool,函数类型等)
在对象中的方法,也可当成一个属性,称为方法属性。
var stu= {
name : '小明',
age : 18,
sex : '男',
sayHi : function(){
alert('大家好啊~');
}
};
对象的使用
访问对象属性
//1.点语法:对象.属性
console.log(stu.name)
//2.中括号语法:对象['属性']
console.log(stu['name'])
调用对象的方法。(注意:在调用方法时,一定不要忘记带后面的括号)
//1.点语法:对象.方法()
stu.sayHi();
//2.中括号语法:对象['方法']()
stu['sayHi']();
2.利用new Object 创建对象
创建空对象,通过内置构造函数Object创建对象。
此时stu变量中已经保存了创建出来的空对象。
var stu = new Object();
给空对象添加属性和方法
var naruto = new Object();
naruto.name = '鸣人';
naruto.sex = '男';
naruto.age = 19;
naruto.skill = function() {
alert('色诱术');
}
3.利用构造函数创建对象
构造函数,把对象里面一些相同的属性和方法抽象出来封装到函数中。是一种特殊的函数,能够创建对象的函数。(构造函数)
语法
function 构造函数名(形参1,形参2,形参3) {// 构造函数的形参与对象的普通属性是一致的
this.属性名1 = 形参1;//形参就是要给属性赋值
this.属性名2 = 形参2;
this.属性名3 = 形参3;
this.方法名 = 函数体;//函数体不需要传递
}
调用
var obj = new 构造函数名(实参1,实参2,实参3)
注意:
- 构造函数约定首字母大写
- 函数内的属性和方法需要添加this,表示当前对象属性和方法
- 构造函数不需要return返回结果
- 必须用new来调用函数
例子。在创建属性时不要忘记 this
function Lufei(name,age,sex,job){
this.name = name;
this.age = age;
this.sex = sex;
this.job = job;
this.sayHi = function(){
console.log('我的名字叫' + this.name + '年龄:' + this.age +
'性别:' + this.sex + '工作:' + this.job)
}
}
var lf = new Lufei('路飞',18,'男','海贼');
lf.sayHi();
补充:new关键字的作用
1.在构造函数代码开始执行之前,创建一个空对象
2.修改this指向,把this 指向创建出来的空对象
3.执行函数代码
4.在函数完成之后,返回this--即创建出来的对象

浙公网安备 33010602011771号