if (! +"\v1")什么意思?
if (! +"\v1")
判断是否为IE浏览器。
IE里不能把 "\v" 处理成垂直符,所以在IE里它就是表示"\v"这个字符串,所以"\v1"为字符串。前面的+号把后面的字符串转换成数字,由于"\v1"在IE里为字符串,所以 +"\v1" 转换失败,其值为NaN。
所以 !+"\v1"的值为 true,所以在IE里 if(!+"\v1")。
(目前测试ie8及之前是这样的,ie8之后与其他浏览器表现相同)
如图:
ie:
非ie:
if (! +"\v1")
判断是否为IE浏览器。
IE里不能把 "\v" 处理成垂直符,所以在IE里它就是表示"\v"这个字符串,所以"\v1"为字符串。前面的+号把后面的字符串转换成数字,由于"\v1"在IE里为字符串,所以 +"\v1" 转换失败,其值为NaN。
所以 !+"\v1"的值为 true,所以在IE里 if(!+"\v1")。
(目前测试ie8及之前是这样的,ie8之后与其他浏览器表现相同)
如图:
ie:
非ie: