请教一下,!+[1,] 能识别ie浏览器,利用了哪些特性?
!+[1,]
ie8及以下的一个bug
ie8及ie以下浏览器的结果为true,其他浏览器的结果为false
是一个俄罗斯人发现的。
其他浏览器[1,]等价于[1]
而IE8会添加一个空数组元素到数组元素的总数里,等价于[1,undefined]这样的数组
+[1,]是强制转换成数字,这中间的过程是[1,]转换成字符串,字符串再转换成数字
其他浏览器:!+[1,] -> !+'1' -> !1 -> false
ie8及以下: !+[1,] -> !+'1,' -> !NAN -> !false ->true
10 回答11.6k 阅读
2 回答3.1k 阅读✓ 已解决
3 回答2.7k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
3 回答806 阅读✓ 已解决
我的书里面有许多