我设法序列化了一个词典集合。我将它从webservice返回到jQuery ajax作为字符串,然后我将返回值放入我声明为数组的javascript变量中:
var myHistoryList = {};
....
success: function(retVal) {
myHistoryList = retVal.d;
}
然后我试图循环它,它似乎没有得到正确的价值。相反,它显示如下的jQuery代码:
trimStart function(){return this.replace(/^\s+/,"")}
这对我来说很奇怪。
继承我的javascript for循环:
for (var yahoo in myHistoryList) {
$('#myUseTable > tbody:last')
.append('<tr><td>' + [yahoo] +
'</td><td>' + myHistoryList[yahoo] +
'</td>');
};
帮助!
答案 0 :(得分:0)
jQuery或您包含的其他库扩展了Object
的原型,因此所有对象都包含额外的辅助函数。您可以使用hasOwnProperty
循环中的for
函数来检查该条件:
for (var key in myHistoryList) {
if (myHistoryList.hasOwnProperty(key)) {
// do your thing
}
}
答案 1 :(得分:0)
你也应该像这样做一个for循环:
for (var i=0; i < myHistoryList.length; i++) {
alert(myHistoryList[i].SomeProperty);
}