什么 Script# 代码会生成以下 JavaScript?
var obj = eval('(' + jsonText + ')');
for (key in obj) // what C# code translates to this iteration?
{
// ...
}
谢谢。
最佳答案
你可以接近:
Object obj = Script.Eval("(" + json + ")");
foreach (DictionaryEntry entry in Dictionary.GetDictionary(obj))
{
}
生成(在 Script# 0.7.2 中):
var obj = eval('(' + json + ')');
var $dict1 = obj;
for (var $key2 in $dict1) {
var entry = { key: $key2, value: $dict1[$key2] };
}
旁注:在 Script# 中已经有一个针对原生 JSON 的绑定(bind)。如果您的目标是,您可以在命名空间 System.Serialization
中将 Script.Eval(...)
替换为 Json.Parse(...)
具有 native JSON 支持的浏览器或将包括流行的 json2.js
图书馆等。
关于c# - 在脚本中迭代对象的属性#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6301046/