`
zhouyrt
  • 浏览: 1172477 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JScript与SpiderMonkey对继承成员可见性的差异

阅读更多

Object是所有javascript对象的超类,其它对象都继承了Object的属性和方法。

 

Object默认有一个属性constructor,6个方法hasOwnProperty、isPrototypeOf、propertyIsEnumerable、toLocalString、toString和valueOf。(ECMAScript 3.1新增getPrototypeOf方法,firefox3.5已实现)

 

用for in是无法列举这些属性方法的。

var obj = {};
for(var atr in obj) 
	alert(atr);
 

虽然无法列举它们,但仍然可以存取(读写)它们。用obj.constructor属性做示例

//取
alert(obj.constructor);//Object()

//写
obj.constructor = null;

//这次输出则是null了
alert(obj.constructor);//null
 

关键这一句

obj.constructor = null;

obj.contructor属性被重写后,我们再用for in列举看看

for(var atr in obj) 
	alert(atr);//obj.constructor重写后,在firefox下输出了(可见),在IE下仍然不没有输出(不可见)

 

 

可见,在SpiderMonkey引擎下(firefox),重写继承来的隐藏的属性constructor后,constructor变得可见了。在JScript引擎下(IE)则仍然不可见。

 

 

 

0
1
分享到:
评论

相关推荐

    通过MOZILLA的javascript引擎(SpiderMonkey)执行js代码

    总的来说,Mozilla的SpiderMonkey提供了一种在C++应用程序中运行JavaScript代码的方法,这对于构建富客户端应用或者与Web服务交互非常有用。通过理解和利用SpiderMonkey的API,开发者可以将JavaScript的强大功能无缝...

    spidermonkey31.2.0开发包

    **一、SpiderMonkey的起源与特点** 1. **起源**:SpiderMonkey诞生于1995年,由Mozilla创始人之一的 Brendan Eich 所创建。最初是为了支持Netscape Navigator浏览器中的JavaScript 1.0实现,后来成为了Mozilla Fire...

    spiderMonkey_js-1.5-rc6a.tar.gz_SpiderMonkey_openVXI_spiderMonke

    SpiderMonkey是Mozilla公司开发的一款JavaScript引擎,它是Firefox浏览器的核心组成部分之一。这个名为"spiderMonkey_js-1.5-rc6a.tar.gz"的压缩包文件包含了SpiderMonkey的1.5版本的源代码,其中rc6a代表的是...

    python-spidermonkey

    《用perl解析JavaScript之JavaScript模块的安装--SpiderMonkey》 安装依赖软件: 安装pyrex:sudo apt-get install python-pyrex 安装g++:sudo apt-get install g++ 安装libjs.so: $ tar zxvf js-1.7.0.tar...

    spidermonkey38.rar

    由于JavaScript引擎的不同版本之间可能存在兼容性问题,因此,使用特定版本的SpiderMonkey(如38)是确保软件稳定性和兼容性的关键。 在**lib**目录下,你会找到一系列的库文件,这些是链接到你的C++程序所需的动态...

    spidermonkey_js32.zip

    SpiderMonkey是Mozilla开发的一款JavaScript引擎,它以快速、小巧和高度可嵌入而著称。在JavaScript的世界里,SpiderMonkey是最早的实现之一,为Mozilla Firefox等浏览器提供了JavaScript的解析和执行能力。本压缩包...

    在Windows系统编译制作SpiderMonkey包.pdf

    SpiderMonkey简介与应用场景 SpiderMonkey是一款高性能的JavaScript引擎,由Mozilla基金会开发并维护。该引擎最初是为了支持Firefox浏览器而设计的,但因其出色的性能表现和丰富的功能集,也被广泛应用于服务器端和...

    spidermonkey引擎 源码

    C++ js 互相调用 spider monkey

    spider monkey+codeblocks 安装及使用demo

    **Spider Monkey与CodeBlocks安装及使用教程** Spider Monkey是Mozilla公司开发的一款JavaScript引擎,它用于在Firefox中执行JavaScript代码。由于其高效的性能和灵活性,Spider Monkey也被广泛应用于其他非浏览器...

    SpiderMonkey 1.6

    **SpiderMonkey 1.6:JavaScript 引擎的深度解析** SpiderMonkey 是 Mozilla 开源项目中的一个关键组件,它是一个高性能的 JavaScript 引擎,由 Brendan Eich 在 1998 年创建,旨在为 Netscape Navigator 浏览器...

    SpiderMonkey_JSAPI

    JSAPI是SpiderMonkey提供给C/C++程序员与JavaScript代码交互的一组接口。通过这些接口,开发者可以嵌入JavaScript到他们的应用程序中,执行脚本,或者控制JavaScript引擎的行为。它涵盖了创建和管理JavaScript上下文...

    spiderMonkey_API实现自定对象的内嵌

    本篇文章将深入探讨如何利用SpiderMonkey API来实现自定义对象的解析与运行。 1. **SpiderMonkey API简介** SpiderMonkey提供了一套C/C++接口,允许开发者在自己的应用程序中嵌入JavaScript代码,并与宿主程序进行...

    SpiderMonkey1.6&1.7 编译文件(全部lib,dll,h文件)

    这个头文件是编写C/C++扩展模块或与SpiderMonkey引擎交互的关键。 除了上述核心组件,这个压缩包还包含了一个Dev-C++工程实例。Dev-C++是一个免费的C++集成开发环境,它对于初学者和开发者来说非常友好。工程实例...

    SpiderMonkey1.7.0源码

    C语言编写的Firefox的Javascript引擎,Firefox3.0以前的Javascript引擎都是用SpiderMonkey的,3.1之后引入了TraceMonkey,但目前还没找到它的源码,希望找到的兄弟们发上来,谢谢。

    spidermonkey1.6源码

    firefox的javascript1.6版本的引擎源代码

    mozilla spidermonkey javascript engine 源代码

    SpiderMonkey is Mozilla's JavaScript engine written in C/C++. It is used in various Mozilla products, including Firefox, and is available under the MPL2.

    spidermonkey.dev:https的来源

    该网站是一个登录页面,连接到对Mozilla SpiderMonkey JavaScript Engine或与Mozilla SpiderMonkey JavaScript Engine一起工作的人员有用的资源。 注意:文档本身应尽可能保留在树中,并从此处链接到文档。 在本地...

    esvalid:确认SpiderMonkey格式的AST代表ECMAScript程序

    esvalid.isValid(node) :: Spidermonkey AST节点→布尔值 当且仅当给定的AST节点表示有效的ECMAScript程序时,才返回true。 esvalid.isValid[removed]node) :: Spidermonkey AST节点→布尔值 当且仅当给定的AST节点...

Global site tag (gtag.js) - Google Analytics