js解释器rhino查看执行环境

rhino是一个Mozilla的开源的由java写的javascript解释器。

文档地址 https://developer.mozilla.org/en/Rhino_documentation

安装方法 http://www.terminally-incoherent.com/blog/2008/01/08/rhino-scripting-java-with-javascript

安装。

ubuntu下直接   sudo apt-get install rhino

然后写个 a.js文件,内容如下

print("hello world")

在终端,输入 rhino a.js。就能看到输入 hello world

在rhino中能返回js执行环境中的variable object。通过__parent__

function f(){
var bob='hello';
var inner = function(){}; 
var parent = inner.__parent__; 
var contents ='';   
for (k in parent) contents += k + ' '; 
print(contents); 
}
f();

输出:arguments bob inner parent contents

看一下代码会输出什么?

function a(){var a2="in";return function(){var b=2;return b;}}
var b=a();
var contents = '';   
for (k in b.__parent__) contents += k + ' '; 
print(contents)

输出:arguments a2

以上说明了什么?函数b的作用域链在函数定义的时候,已经创建好了。

原文地址:https://www.cnblogs.com/lunalord/p/1994172.html