在 JSON 对象中执行函数

pin*_*yeg 1 javascript json

我创建了一个 JSON 对象,但该对象中包含我想要访问并作为普通函数运行的函数列表。我正在尝试找出如何实现这一目标,但我遇到了困难。以下是我正在做的事情:

Bootstrapper.dynamic = {
    "interaction": function(data) {
        s.linkTrackVars="events,prop2,eVar2,prop32,eVar32,prop33,eVar33";
        s.linkTrackEvents="event2";
        s.prop2="site:social:facebook";
        s.eVar2="D=c2";
        s.prop32=data.tp_type;
        s.eVar32="D=c32";
        s.prop33=data.ct_type;
        s.eVar33="D=c33";
        s.events="event2";
        s.tl(this,'o','interaction');
    }
};
Run Code Online (Sandbox Code Playgroud)

注意“交互”功能。这就是我想要解雇的,但我遇到了困难。谢谢你的帮助。

jag*_*oft 5

为什么要对对象进行字符串化?根据设计,JSON 不理解函数。然而,Javascript 对象会:

var x = {
    name:"FirstName",
    age:"21",
    load:function(){ alert('hi') }
};
x.load(); //works
Run Code Online (Sandbox Code Playgroud)

如果你确实想将函数转换为 JSON,请查看JSONfn插件: http: //www.eslinstructor.net/jsonfn/