Javascript对象概述

原稿地址: http://www.cnblogs.com/hbzyin/p/7349727.html

深信前端开发人士对DOM、BOM对象都已经极度明白了,那些六个目的不仅是入门概念,也是惯常开支中接触最多的概念;同时作为前端开发的必需知识之一的Javascript,由于其负有惊人的灵活性,很多同桌都是秉承遭逢什么学怎么样的理念,一点点不止来完善协调的文化,这也是个人加强技能的必经途径之一;然则个人或者相比赞同于完全把握为指引,平时积累为手段的不二法门展开加强。
综上说述适合自己的办法,才是最好的办法。下边切入焦点:

1. 大局对象

大局对象:在宿主环境中,其自己及其所有属性都可以在先后的其余地点、任何时刻拜访到的靶子;假如全局对象有切仅有一个,全局对象同时也是根节点目的;

  • 根节点目的:所有属性、方法都挂载在根节点目的下,便于开发者举行性能、方法的搜索;其缺点是调用繁琐;
  • 大局对象
    :不同属性、方法都挂载在三个节点目的下,优点是调用方便神速;缺点也是被Java语言所诟病的无序,使用时不知从何查找;

2.Javascript的全局对象

DOM、BOM对象现在的超新星NodeJS都有一个唯一的大局对象,所有其他属性、方法都从属于该节点目标、或其子节点目的;如DOM的html、BOM的window、NodeJS的global
Javascript为了开发者使用的有利,将许多办法、属性都设置为全局对象/属性,所以Javascript就从不所谓的绝无仅有的根节点目的;
Javascript的大局对象依据是否倚重宿主环境分为两类:

  • 主干目的:即ECMAScript Global

    Object,这多少个目的在程序执行前早已存在了(默认实例化);

    宿主环境下的目标:宿主环境提供的全局对象/函数,常见的是浏览器设定并且限定开发者重写的,如:set提姆eout、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

  1. 宿主环境(紧如若浏览器)设定的大局对象,一般是不同意重写的

—END

相关文章