视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Javascript中有关对象的概述
2020-11-27 20:14:31 责编:小采
文档


相信前端开发人员对DOM、BOM对象都已经十分了解了,这些两个对象不仅是入门概念,也是日常开发中接触最多的概念;同时作为前端开发的必备知识之一的Javascript,由于其具有高度的灵活性,很多同学都是秉承遇到什么学什么的理念,一点点不断来完善自己的知识,这也是个人提高技术的必经途径之一;不过个人还是比较倾向于整体把握为指导,日常积累为手段的方式进行提高。

总之适合自己的方法,才是最好的方法。下面切入正题:

1. 全局对象

全局对象:在宿主环境中,其自身及其所有属性都可以在程序的任何地方、任何时间访问到的对象;如果全局对象有切仅有一个,全局对象同时也是根节点对象;

  • 根节点对象:所有属性、方法都挂载在根节点对象下,便于开发者进行属性、方法的查找;其缺点是调用繁琐;

  • 全局对象 :不同属性、方法都挂载在多个节点对象下,优点是调用方便快捷;缺点也是被Java语言所诟病的无序,使用时不知从何查找;

  • 2.Javascript的全局对象

    DOM、BOM对象现在的明星NodeJS都有一个唯一的全局对象,所有其他属性、方法都从属于该节点对象、或其子节点对象;如DOM的html、BOM的window、NodeJS的global
    Javascript为了开发者使用的方便,将诸多方法、属性都设置为全局对象/属性,所以Javascript就没有所谓的唯一的根节点对象;
    Javascript的全局对象根据是否依赖宿主环境分为两类:
    - 核心对象:即ECMAScript Global Object,这些对象在程序执行前已经存在了(默认实例化);
    - 宿主环境下的对象:宿主环境提供的全局对象/函数,常见的是浏览器设定并且开发者重写的,如:setTimeout、location等,

    2.1. Javascript的核心全局对象:

    序号类别栗子
    1值属性NaN、Infinity、Undefined...
    2函数属性eval()、parseInt()、isNaN()、decodeURI()....
    3构造器(类)属性Object、Array、Function、String、Boolean、Number、Date、RegExp、Error、RangeError、SyntaxError...
    4其他(类似JAVA中静态类)Math、JSON...

    2.2. 全局对象的读写性:

    不管是Javascript的核心全局对象,还是宿主环境扩充的全局对象;开发者都可以随时调用;其不同之处在于:
    1. ECMAScript中定义的核心全局对象是可重写,但不可枚举,即:Writeable=true,Enumerable=false
    2. 宿主环境(主要是浏览器)设定的全局对象,一般是不允许重写的

    下载本文
    显示全文
    专题