1.什么是对象?
生活中:万物皆对象,对象是一个具体的事物,一个具体的事物就会有行为和特征
举例:一辆汽车,一部手机
车是一类事物,门口停的那辆车才是对象
特征:红色,四个轮子
行为:驾驶,刹车
2.JavaScript中的对象
JavaScript中的对象其实就是生活中对象的一个抽象
JavaScript的对象是无序属性的集合
其属性可以包含基本值,对象,数组或函数。
对象就是一组没有顺序的值
我们可以吧JavaScript中的对象想象成键值对,其中值可以使数据和函数。
对象的行为和特征
特征---属性
行为---方法
事物的特征在对象中用属性来表示
事物的行为在对象中用方法来表示
以上就是对于JavaScript对象概述,那我们接下来就看一下,它的声明和使用:
我们先把代码写好,我们看下面的JS代码
var obj1 = {};
这个就是对象的声明用法,和我们之前的声明变量一样的简单,就是后面跟大括号;就可以了
就像我们之前想要获取一个数组一样,直接大括号,括号里写东西就是,有元素有值的数组,不写就是空数组,对象也一样,这个是JS里最简单的一种了:
var arr = [];
那怎么写呢
注意:
对象里面所有的东西,都是 键与值成对出现的,这样说可能不太明白,我们直接上代码:
... ...
我们看这个代码,解释一下,假如就是形容一个人的,age:12,sg:190,name:‘小明’ age:18,这就是说明年龄18岁了,就是这个键和值就是:前面的东西,值就是:后面的东西,键和值用冒号分隔,那么这个值,是一个数值型,字符串型,数组,或者是另外一个对象,或者是null,undefined等等都无所谓,都是属性,**注意:**有一个东西,这样用了,就是一个方法了:
我们看后面的,把函数当成一个值,放在了对象里面,那么它将不是一个函数,我们把fei,或者函数就叫做方法,这是一种惯用的称呼方式,如果有人要说 fei 是一个属性,注意他说的没错,只不过它的值是一个函数而已 ,这就是一个交流,在我们程序员交流时,为了方便,就把这个成为 方法,因为在JS官方首次里是没有方法这个概念的,就是只有属性
以上就是 : 字面量声明对象
对象中的数据都是键值成对存在的,通常来说,值是函数则称为方法,其他类型的值都是属性
除了以上对象声明方式。还有几种声明方式,不过最常用的还是 字面量声明对象,下面给大家列举出了:
// 实例化方式 (内构造函数)
var obj2 =new Object();
// 自定义构造函数方式
function FUN(){
}
// 实例化自定义构造函数方式声明函数
var f = new Fun();
三种声明方式,不用纠结有什么区别,就记住就可以了,后面我们在将JS高级面向编程,会再次给大家详细解释的
下面我们看怎么使用:
获取对象的属性或者方法 对象.属性名
... ...
var obj2 = {
age: 12,
sg: 190,
name: '小明',
fei: function () {
console.log(3)
}
};
console.log(obj2.sg);
我们看是要获取 sg,我们看能否获取到:
那我想让函数那个代码执行,怎么办呢:
var obj2 = {
age: 12,
sg: 190,
name: '小明',
fei: function () {
console.log(3)
}
};
obj2.fei();
先解释一下,obj2.fei写到这个样只是获取到函数了,而函数要想获取到,还要调用啊,那么调用的话,就可以直接在后面加 (); 就可以了