JavaScript中对对象的理解

1.首先我们就来理解什么是对象。

什么是对象?在我们的现实生活当中万物皆是对象,对象就是一个具体的事物,看得见摸得着的实物。例如,一本书、一辆汽车、一个人可以是对象,一张数据库、一张网页、一个与远程服务器的连接也可以是对象。注意:对象一定是一个具体的事物,例如,苹果不能算是一个对象,但是这个苹果是一个对象——苹果太过于泛指,而这个苹果就是一个具体的指向。

那么回到我们的JavaScript中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数据、函数等等。

对象是由属性和方法组成的。属性指的是事物的特征,在对象中用属性来表示(常用名词);方法指的是事物的行为,在对象中用方法来表示(常用动词)。比如说对于一部手机,它的大小、颜色、重量、屏幕尺寸是它的属性;打电话、发短信、玩游戏等就是它的方法。

2.我们为什么需要对象呢?

在保存一个值得时候,我们可以使用变量,保存多个值(一组值)时,我们可以使用数组。比如说我们要保存李华得个人信息,我们可以使用数组。

var arr = ['李华','male','170','165']

这样我们就创建好了李华得个人信息数组,但是最后两个数值表达的是什么意思呢?身高?体重?亦或是什么呢?这样我们就不得而知。此时我们可以引入对象。在JavaScript中的对象表达结构更清晰也更强大。比如李华的个人信息在对象中的表达结构如下:

var arr = { uname:'李华',
sex:'male',
stature:170,
height:165}

这样我们就创建好了李华这一个对象。

3.怎么创建对象?

在JavaScript中创建对象有三种方法,(1)利用字面量创建对象;(2)利用 new Object创建对象;(3)利用构造函数创建函数。我们这里只讲解前面两种方法。

我先讲解第一种方法——利用字面量创建对象 ,其实前面我举例的时候就是用的这种方法。它的格式就是  var 对象名 { 属性名1:'值1',属性名2:'值2',属性名3:'值3'}   它里面的属性或者方法我们采取的是键值对的形式。什么是键值对呢?键可以理解为属性名,值可以理解为属性值,它们两个为固定的一对,所以称为键值对。如果有多个属性或者方法我们在中间用逗号隔开。总体代码展示一下:

var obj = { username:'lihua',
age:18,
sex:'male',
sayHi: function(){
console.log('hi~');
}}

中间的函数就是方法。它的格式为方法冒号后面跟的是一个匿名函数。

如果是这种形式创建的对象我们怎么调用呢?

(1)调用对象的属性,我们采取 对象名。属性名的形式,例如我要在控制台输出它的姓名我可以这样:console.log(obj.username),输出就为lihua。

(2)调用属性还有一种方法——对象名['属性名'] ,例如要输出这个对象的名字一样我们可以这样输出:console.log(obj['username'] ,输出为lihua。

(3)调用函数的方法 对象名.方法名() 千万不要忘记要带最后这个小括号。这里我要调用这个对象中间的函数我就可以这样:obj.sayHi()    输出为hi~

第二种方法——利用new Object创建对象

var obj = new Obiect() //创建了一个空对象
obj.uname = 'lihua';
obj.age = 18;
obj.sex = 'male';
obj.sayHi = function(){  //在对象里面新增一个方法
console.log('hi~');
}

我们利用new Object的方法创建一个空对象,然后利用 等号= 赋值的方法添加对象的属性和方法。每一个属性和方法之间用分号结束。对象的使用与第一种的方法一样。

4.变量、属性、函数、方法之间的区别

最后再补充一点它们之间的区别。变量和属性相同的是它们都是用来存储数据的,区别在于变量是单独声明并赋值,使用的时候直接写变量名;而属性在对象里面是不需要声明的,使用的时候必须是 对象.属性名。

函数和方法的相同点在于它们都是实现某种功能、做某件事情。但函数是单独声明的,使用的时候调用的是  函数名()  ,而方法是在对象里面,调用的时候 对象.方法() 调用。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值