javascript宿主对象和内置对象的区别有哪些

发布时间:2022-03-10 17:03:27 作者:iii
来源:亿速云 阅读:116

今天小编给大家分享一下javascript宿主对象和内置对象的区别有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

区别:1、内置对象是原生对象的一个子集属于原生对象,而宿主对象不是引擎的原生对象;2、内置对象是由ECMAScript实现提供的独立于宿主环境的所有对象,而宿主对象是ECMAScript官方未定义的对象。

本教程操作环境:windows10系统、javascript1.8.5版、Dell G3电脑。

javascript宿主对象和内置对象的区别是什么

原生对象包括内置对象(JavaScript引擎初始化时就被创建好的对象)和JavaScript运行过程中动态创建的对象,而宿主对象就是javacript引擎在运行过程中,JavaScript宿主环境(运行环境)通过某种机制注入到javascript引擎中的对象

具体区别:

内置(Build-in)对象:总是在引擎初始化阶段就被创建好的对象,是原生对象的一个子集。内置对象就是由EcmaScript提供的独立于宿主对象之外的,包含Global和Math(数字对象)和内置对象

原生(Naitve)对象:除了内置对象,还包括了一些在运行过程中动态创建的对象。原生对象独立于宿主环境之外,包括Object,Array,Function,Number,String,Date

宿主对象:宿主对象不是引擎的原生对象,而是由宿主框架通过某种机制注册到JavaScript引擎中的对象。Javascipt的运行环境就是操作系统和浏览器,包含两类宿主对象BOM和DOM

一、原生对象

ECMA-262 把原生对象定义为“独立于宿主环境的 ECMAScript 实现提供的对象”。

包含: Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError、ActiveXObject(服务器方面)、Enumerator(集合遍历类)、RegExp(正则表达式)

二、内置对象

ECMA-262 把内置对象(built-in object)定义为“由 ECMAScript 实现提供的、独立于宿主环境的所有对象,在 ECMAScript 程序开始执行时出现”。这意味着开发者不必明确实例化内置对象,它已被实例化了。

同样是“独立于宿主环境”。ECMA-262 只定义了两个内置对象,即 Global 和 Math (它们也是原生对象,根据定义,每个内置对象都是原生对象)

三、宿主对象

何为“宿主对象”? ECMAScript中的“宿主”当然就是我们网页的运行环境,即“操作系统”和“浏览器”。

BOM 和 DOM 都是宿主对象。因为其对于不同的“宿主”环境所展示的内容不同。其实说白了就是,ECMAScript 官方未定义的对象都属于宿主对象,因为其未定义的对象大多数是自己通过 ECMAScript 程序创建的对象

以上就是“javascript宿主对象和内置对象的区别有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

推荐阅读:
  1. jsp的内置对象有哪些?分别有什么作用?
  2. javascript内置对象怎么扩展

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

javascript

上一篇:php依赖注入指的是什么

下一篇:jquery事件委托方法怎么用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》