JavaScript中来自String的变量和函数

用户名

例如,我们有一个变量和一个名为fooand的函数plus

var foo = 2;

var plus = function(a,b){return a+b;}

我们有一个字符串:

var s = '1 plus foo';

现在我想将此字符串s 转换为数组:

var array = [1, plus, foo]);

请注意,这不是[1, 'plus', 'foo']哪个转换那么容易,我知道方法。

因此,因此,我的问题是

如何从字符串获取值(函数)本身?

并且还请注意,eval用于解决此问题是无效的,因为其目的不是求值,而是根据字符串构造一个数组

谢谢。


编辑:

由于我使用了node.js

全局对象是global,它似乎global.foovar foo不同。

我觉得在提出这个问题之前,这就是为什么我在这里问。

[1, global['plus'], global['foo']] 应该是无效的答案。

用户名

我的自我回答:

var G = {};

var foo = G.foo = 2;

var plus = G.plus = function(a,b){return a+b;}

我们有一个字符串:

var s = '1 plus foo';

现在我想将此字符串s 转换为数组:

var array = [1, G['plus'], G['foo']];

这样,我们可以避免使用全局变量并保留var foo格式,同时允许使用G object + ['string']访问该值。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章