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. 宿主环境(主要是浏览器)设定的全局对象,一般是不允许重写的
以上就是Javascript中有关对象的概述的详细内容,更多请关注其它相关文章!
上一篇: swoole 有没有 类似 php-fpm的slow log 功能
下一篇: ps软件怎么更换蓝底
推荐阅读
-
有关jquery中form表单序列化的一些问题指导
-
PHP面向对象中的重要知识点(一)
-
Javascript中Eval函数的使用说明_javascript技巧
-
JavaScript 嵌套函数指向this对象错误的解决方法_javascript技巧
-
JavaScript 中的 this使用方法详解
-
问:一个天才的有关问题可以用php得到msn中好友的信息吗
-
javascript中的onkeyup和onkeydown区别介绍_基础知识
-
javascript中的new使用_javascript技巧
-
关于python中“赋值就是建立一个对象的引用”,大家怎么看?Python一切皆为对象又是什么意思?
-
PHP中的面向对象