遇到的问题很简单,就是一个方法内有个循环,我之前为了简便,直接:
for(i in list){
...//coding
}
然后在所有平台上跑都正常(除了我们测试妹子的iPhone6老人机上——相信我,我此时的心情是充满敬意的,妹子的手机真是老人机。直到我翻来覆去的鼓捣大半天后,这种心情尤为突出)。
如题,我真真找了一大半天,才发现这么一个坑!在妹子的iPhone6上,9.2版本的情况下,for in循环不兼容(不支持,或者说是不能正常工作更为贴切,因为在该处只是循环有问题)。最后我老老实实的
for(var i=0;i<list.length;i++){
...//coding
}
正常了...我是如何发现这个问题的呢?因为同时在该页面上又有另一个for in循环,不同的是,这个for in循环后的内容会展示出来,而我终于发现了它默默的循环了两次...WTF?!!!!!
在其他平台上正常,唯独在妹子那iphone9.2版本的老人机上循环了两次,why?
我虽然找到了这个bug的诱因,但是却并不明白到底是因为什么原因,万能的大神们,你们知道这是为什么啊?
你应该是用了Vue2.x吧,并且这个list是响应式的(被vue监听的),在ios9上for in确实会存在遍历两边的情况,这个应该是ios9下对于for in的bug。