ecshop ajax
原因就是json.js定义了 Object.prototype.toJSONString于是 regions.province也就有了这个东西,于是 for (var k in )时,会有一个toJSONString的k
var k in ...这个语法会把所有自己定义的东西都遍历出来,包括prototype里的,只有javascript自己定义的东西不会遍历出来
比较好的解决办法就是修改json.js
改成Object.toJSONString,不要prototype
abc.toJSONString改成 Object.toJSONString(abc)
不要给Object.prototype加任何东西,这是一个好习惯
另一个简单办法就是:
for (var k in regions.provinces)
if (regions.provinces.hasOwnProperty(k))
alert(...)
判断hasOwnProperty就将prototype中的都排除掉了
但是如果regions.provinces是某个自定义类的对象,希望自定义的prototype里的东西要遍历,这样就不行了
页:
[1]