迭代脚本中对象的属性#

时间:2011-06-10 01:21:13

标签: c# javascript iteration script#

哪些脚本#代码会生成以下JavaScript?

var obj = eval('(' + jsonText + ')');

for (key in obj)  // what C# code translates to this iteration?
{
    // ...
}

感谢。

1 个答案:

答案 0 :(得分:5)

你可以接近:

Object obj = Script.Eval("(" + json + ")");
foreach (DictionaryEntry entry in Dictionary.GetDictionary(obj))
{

}

生成(在脚本#0.7.2中):

var obj = eval('(' + json + ')');
var $dict1 = obj;
for (var $key2 in $dict1) {
    var entry = { key: $key2, value: $dict1[$key2] };
}

Side Note :脚本#中已存在针对本机JSON的绑定。如果您的目标浏览器具有原生JSON支持,或者包含常用的json2.js库等,则可以将Script.Eval(...)替换为名称空间Json.Parse(...)中的System.Serialization