1

我不确定这是否可能。但我正在寻找一个动态评估变量值并将其粘贴到变量本身的位置的函数。

设想:

resources: resourcesSource,

我的插件声明之一中有上述行。变量resourcesSource包含所需的 JSON 字符串。现在我想要的是这样的:

resources: evaluate(resourcesSource),

在此之后,javascript应将其视为:

resources: [{'name': 'Adil Malik','id': '217_resid'},{'name': 'Adam Jones','id': '433_resid'},{'name': 'help team','id': '2056_resid'},]

而不是像这样将变量放在那里:

resources: resourcesSource,
4

2 回答 2

0

您可以使用内置的 jQuery$.parseJSON()函数来执行此操作。虽然 ifresourcesSource已经是一个 JSON 对象,但没有必要,因为它可以通过resources.

resources: $.parseJSON(resourcesSource),
...

参考 - http://api.jquery.com/jQuery.parseJSON/

描述:
采用格式良好的 JSON 字符串并返回结果 JavaScript 对象。

于 2012-07-07T12:28:15.703 回答
0

如果要将 JSON 对象转换回字符串变量,则必须使用外部插件/函数为您执行此操作。

你可以看看这个版本 - jQuery.stringify() 实用程序

使用它,您可以轻松地将 JSON 对象恢复为其字符串表示形式。

还有一点需要注意的是,您在对象中的最后一个元素之后有一个尾随逗号。

[
 {'name': 'Adil Malik','id': '217_resid'},  
 {'name': 'Adam Jones','id': '433_resid'},  
 {'name': 'help team','id': '2056_resid'}
]

请注意删除了第三个元素之后的尾随逗号。

运行该jQuery.stringify(a);函数将返回该对象的字符串表示形式 -

"[{"name":"Adil Malik","id":"217_resid"},{"name":"Adam Jones","id":"433_resid"},{"name":"帮助团队", "id":"2056_resid"}]"

于 2012-07-07T13:21:03.777 回答