首先说明该代码只能在IE 6~8中有效,再高级的IE已经修复这个BUG
<script type=’text/javascript’> var ie = !-[1,]; alert(ie); //如果是ie,弹出true </script>
原因:
首先[1,]是个数组,由于有个逗号,IE会在后面自动插入一个空元素,这样里面就有两个元素!
"-" 操作符将数组强制转型成数值,由于数组里面有两个元素,转型失败,变成 NaN 再加“!” 操作符,就变成 true了
2021-12-16 10:46:52
首先说明该代码只能在IE 6~8中有效,再高级的IE已经修复这个BUG
<script type=’text/javascript’> var ie = !-[1,]; alert(ie); //如果是ie,弹出true </script>
原因:
首先[1,]是个数组,由于有个逗号,IE会在后面自动插入一个空元素,这样里面就有两个元素!
"-" 操作符将数组强制转型成数值,由于数组里面有两个元素,转型失败,变成 NaN 再加“!” 操作符,就变成 true了