javascript – 获取node.js或V8中的所有值的值

前端之家收集整理的这篇文章主要介绍了javascript – 获取node.js或V8中的所有值的值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
例如,如果我们假设以下代码
var f = function() { return 'hello world' };
var x = 10;
var y = 314;

var g = function() {
    var buf = [],xx = x;
    while (xx--)
        buf.append(f() + ' ');
    return buf.join('');
}

我可以用g.toString()获得实际的“code”作为一个g的字符串.然而,这显然不会得到f和x的关闭g的成员(如果我没有正确使用这些术语,那么抱歉)

有什么方法查询一个函数关闭它的内容吗?理想情况下,我可以得到一个对象,如:

{ 'f' : f,'x': x } // note that `y` is not here

如果我不得不放弃C与V8的特殊交互,那没关系 – 尽管以纯粹的JavaScript做的这一切将是最好的.

我知道这是一个奇怪的问题 – 但我确实有一个合理的理由想要这个!

解决方法

我发现 this discussion的V8关闭实现启发.听起来像您正在寻找的C对象是 Context.

猜你在找的JavaScript相关文章