本帖最后由 无解、 于 2012-9-9 12:13 编辑
<ignore_js_op> 这个图来自于《JavaScript语言精髓与编程实践》第三章P184页。最近在改第二版,这张图重做了,需要的可以对照着看。 此外,补充一下图中用到的概念: 1、内置(Build-in)对象与原生(Naitve)对象的区别在于:前者总是在引擎初始化阶段就被创建好的对象,是后者的一个子集;而后者包括了一些在运行过程中动态创建的对象。 2、引擎扩展对象是一个并不太大的集合,一般来说比较确定,它们也属于引擎的原生对象(但不属于ECMA规范的原生对象)。 3、宿主对象不是引擎的原生对象,而是由宿主框架通过某种机制注册到JavaScript引擎中的对象。 4、一些宿主会把自己提供的对象/构造器也称为“原生对象”,例如Internet Explorer 7就把它提供的XMLHttpRequest()称为原生的——与此相对的是在它的更早先版本中通过“new ActiveXObject('Microsoft.XMLHTTP')”这样的方法创建的对象。这种情况下,读者应注意到“宿主的原生对象”与“引擎的原生对象”之间的差异。 |
相关文章
- js中arguments对象和this对象
- js中的json对象和字符串之间的转化
- JavaScript中本地对象、内置对象和宿主对象
- js中json对象不规律key的遍历实现和json对象length属性的调用
- js获取json对象中的key和value,并组成新数组
- [转]ThinkPHP中实例化对象M()和D()的区别,select和find的区别
- js中call函数和apply的区别是什么?什么叫call 方法可以用来代替另一个对象调用一个方法
- js对象中属性调用.和[] 两种方式的区别
- json字符串和对象转换以及json2.js和jquery.json-2.3.js中对于json的方法定义理解
- js中__proto__, property, prototype, 对象自身属性方法和原型中的属性方法的区别