例如我的JSON字符串是这样的:JSON字符串函数调用
{
"v1" : [],
"v2": 2,
"v3": f()
}
现在,我需要解码此为f
和f()
的定义范围内给出正确的答案在这方面(通过检查调试器)。但是JSON.parse(jsonstring)
给我Unexpected token
。 eval
也给出错误。我该怎么办?
看到一个例子Here
例如我的JSON字符串是这样的:JSON字符串函数调用
{
"v1" : [],
"v2": 2,
"v3": f()
}
现在,我需要解码此为f
和f()
的定义范围内给出正确的答案在这方面(通过检查调试器)。但是JSON.parse(jsonstring)
给我Unexpected token
。 eval
也给出错误。我该怎么办?
看到一个例子Here
为什么它不工作
看一个JSON的definition,它不能包含函数调用。
可能的解决方法
一种方法是做这样的事情,回报你要调用的函数的字符串。
{
"v1" : [],
"v2": 2,
"v3": "f"
}
现在当您需要访问它时,您可以调用该函数。
var myJSON = JSON.parse(jsonstring);
var myFunctionResult = window[myJSON.v3](); //works if global variable
其他选项是改变你的代码是如何工作的,让一个异步脚本调用[jQuery的是getScript
,常规的JavaScript createElement("script")
与appendChild()
和使用回调像JSONP一样。
好吧,但我想你明白我想要的结果。请作出相应回应。 – prongs 2012-07-13 13:56:55
使用可能的解决方案对其进行了更新[s]。 – epascarello 2012-07-13 14:14:46
这不是一个JSON字符串:“F()” 。阅读http://www.json.org/ – 2012-07-13 13:54:31