原因是这样的,在对对象里一个时间字段进行排序展示的时候,google浏览器运行是正常的,而ie并没有发生改变,起先我以为是常见的‘YYYY-MM-DD’和‘YYYY/MM/DD’在不同浏览器上的识别问题,后来转念一想应该不是的,毕竟我已经把它们都用moment处理成了moment对象,而且使用了moment.js的isAfter()函数
在ie下结果sort居然没有任何作用
然后我Google一下,原来是因为sort后面跟着的排序函数,需要返回正数、负数或者0才是标准的影响排序的函数。而如上例所示的采用返回布尔值的函数作为排序函数是一种误用。
看来以后看书还是得仔细,当时我就一直很好奇高级程序设计里为啥要用1,-1,0来作为返回值,网上的一些demo经常直接返回a>b害死人
ps,我尝试着在Safari浏览器中试了一下也会有这种问题存在,平时还是得严谨一些