理解JavaScript中的对象

 更新时间:2020年08月25日 09:56:36   作者:Jason  
这篇文章主要介绍了如何理解JavaScript中的对象,帮助大家更好的学习JavaScript,感兴趣的朋友可以了解下

JavaScript中对象的简介

我们知道生活中客观存在的一切事物皆为对象,那在程序中的对象是什么样子呢?我们可以将程序中的对象理解为客户端世界中的对象在一种计算机中的一种表示方式.所有的编程语言中提到的对象其性质都是类似的,它往往对应内存中的一块区域,在这个区域中存储对象的属性或方法信息。

JavaScript中对象的创建

基于{}符号创建对象

在JS中我们可以直接基于{}定义对象,在对象内容定义属性和方法,例如:

在JS中我们可以将对象理解为用于封装属性和方法的一个结构体,例如

如果需要反复创建多个相同结构的对象时,用{}代码就很冗余——重复。也不便于维护!

基于构造函数创建对象

假如在JS中我们希望非常方便的定义多个结构相同,但属性值不同的对象,可以直接基于构造函数( 定义同一类型多个对象的相同属性结构的特殊函数)进行对象创建,例如:

建议:只要反复创建多个相同结构的对象,都要用构造函数来创建对象.

在实际应用中我们尽量不要在构造函数中再去定义函数,例如:

这样在构建对象时,可能每次都需要开辟额外的函数空间.

JavaScript中的对象特性

封装特性

JS中的对象用于封装属性和方法.如图所示:

继承特性

JS中为了实现属性或方法的可重用性,提供了一种继承机制,

这种继承的方式需要借助Prototype对象去实现,Prototype对象是在定义构造函数时自动创建,用于存储所有共有属性和方法的一个对象,所有通过此构造函数构建的对象都继承这个原型对象.

构造函数中的原型对象分析,如图所示:

原型对象(ProtoType)对象的继承,如图所示:

在对象中添加共有属性,如图所示:

在对象中添加共有方法的.如图所示:

原型链是由多级父对象(原型对象)逐级继承形成的链式结构。这个原型链保存着一个对象可以访问的所有父级原型对象,以及这个对象可访问到的所有属性和方法。

多态特性

多态一般指同一个函数(行为),在不同情况下表现中的不同的状态。从应用上有两种形式,分别为重载和重写。

重载的定义:一个函数,根据传入的实参值不同,执行不同的逻辑。

重写的定义:在子对象中定义一个和父对象中成员同名的成员。只要从父对象继承来的东西不好用,就用重写自己的!

在子对象中定义一个和父对象中成员同名的自有成员,例如:

JavaScript内置对象类型

对象类型简介

JavaScript中对象的类型可以理解为构造方法和原型对象的结合体,当我们需要查看其对象类型时,可以通过构造方法名.

JS中内置的对象类型

JS中有11种内置对象类型,分别为String, Number, Boolean, Array, Date, RegExp, Math(对象), Error, Function, Object, global(对象)

总结(Summary)

本小节主要是对JS中对象做了简介,并通过实践方式分析JS中对象的创建,对象特性以及对象内置类型。

以上就是理解JavaScript中的对象的详细内容,更多关于JavaScript 对象的资料请关注脚本之家其它相关文章!

相关文章

  • 关于Javascript 的 prototype问题。

    关于Javascript 的 prototype问题。

    关于Javascript 的 prototype问题。...
    2007-01-01
  • IE中鼠标经过option触发mouseout的解决方法

    IE中鼠标经过option触发mouseout的解决方法

    这篇文章主要介绍了IE中鼠标经过option触发mouseout的解决方法,分析了IE中鼠标移到option时window.event.toElement返回值为null的原因及解决方法,需要的朋友可以参考下
    2015-01-01
  • Webpack中的文件指纹的实现

    Webpack中的文件指纹的实现

    本文主要介绍了Webpack中的文件指纹的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • Swiper实现轮播图效果

    Swiper实现轮播图效果

    这篇文章主要为大家详细介绍了Swiper实现轮播图效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • 通过伪协议解决父页面与iframe页面通信的问题

    通过伪协议解决父页面与iframe页面通信的问题

    这篇文章主要介绍了通过伪协议解决父页面与iframe页面通信的问题,需要的朋友可以参考下
    2015-04-04
  • TypeScript泛型的使用详细介绍

    TypeScript泛型的使用详细介绍

    在TypeScript中,泛型是一种创建可复用代码组件的工具。这种组件不只能被一种类型使用,而是能被多种类型复用。类似于参数的作用,泛型是一种用以增强类(classes)、类型(types)和接口(interfaces)能力的非常可靠的手段
    2022-09-09
  • JavaScript实现文字跟随鼠标特效

    JavaScript实现文字跟随鼠标特效

    这篇文章主要介绍了JavaScript如何实现文字跟随鼠标特效,d代码简单易操作,感兴趣的朋友可以参考下
    2015-08-08
  • JS转换HTML转义符的方法

    JS转换HTML转义符的方法

    下面小编就为大家带来一篇JS转换HTML转义符的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • this和执行上下文实现代码

    this和执行上下文实现代码

    Javascript中this关键字通常指向当前函数的拥有者。在javascript中通常把这个拥有者叫做执行上下文。
    2010-07-07
  • JS遍历数组及打印数组实例分析

    JS遍历数组及打印数组实例分析

    这篇文章主要介绍了JS遍历数组及打印数组的方法,结合实例形式分析JavaScript数组的遍历与打印输出相关技巧,需要的朋友可以参考下
    2016-01-01

最新评论