我在使用jQuery迭代关联数组时遇到了问题。在HTML页面中有四个span元素...我使用json获取这些元素的text()值,以构建一个维度数组。
var export_pkg = {
height : $('#cubeiq_hght').text(),
length : $('#cubeiq_lnth').text(),
depth : $('#cubeiq_wdth').text(),
weight : $('#cubeiq_wght').text()
};
$.each(export_pkg, function(key,value){
alert(key + ' ' + value);
});
由于某种我无法理解的原因,export_pkg的长度始终是数组中length的文本值。Firefox和IE的开发者工具都显示export_pkg是一个有4个项且值正确的数组。但当我到达$.each块时,它会忽略对象并只使用第二个条目作为对象的长度。
例如:如果数组有{length: 10},那么警报框将出现10次,无论其他值是什么。我无法想象为什么它不像我预期的那样运行4次。
这里是一个jslint链接 http://jsfiddle.net/fFDfU/。