2016-03-27 11 views
-2

私は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'); 
    } 
}; 

「相互作用」機能に注目してください。それは私が発射しようとしているものですが、難しさがあります。助けてくれてありがとう。

+2

JavaScriptオブジェクトではなく、JSONオブジェクトです:

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

をあなたは本当にJSONに機能を変換したい場合は、JSONfnプラグインを見てみましょう。この関数を呼び出すには、 'Bootstrapper.dynamic.interaction(yourData);を使用します;' s'が何をすべきかははっきりしません。 – Pointy

+0

'Bootstrapper.dynamic.interaction'は' Bootstrapper.dynamic ['interaction'] 'と同じです' Bootstrapper ['dynamic'] ['interaction'] 'と同じです' var foo = 'dynamic'、bar = 'interaction'; 'then' 'Bootstrapper [foo] [bar];' –

+0

私はBootstrapper.dynamic ['interaction']を使用すると、引数をどのように追加しますか? – pingeyeg

答えて

0

なぜオブジェクトを正確にストリング化しますか?設計上、JSONは関数を理解しません。しかし、Javascriptのオブジェクトを実行します。http://www.eslinstructor.net/jsonfn/

+0

私はこれがJSONオブジェクトではないので、JSONオブジェクトと呼ぶわけではなかったことを認識しました。私の悪い。 – pingeyeg

関連する問題