js判别过滤出ie8、ie7

最近看到一种if语句if(!+"\v1")

不知其用意,于是调式了一番,原来ie8与ie8以下浏览器中(!+“\v1”)返回true,其他主流浏览器跟ie9+则返回false。

为什么会这样?

先把语句拆分出来分析

1:“\v1”;

\v在正则表达式中表示”竖向制表符“

console.log("\v1");在ie8与ie8以下浏览器中返回v1,在其他浏览器中返回1,这就是为什么两者会返回不同的布尔值的根本原因。(但为什么会返回v1和1我就不太清楚了,但我觉得是ie8以及一下的版本不能识别“\”,而其他浏览器就会将它作为制表符处理)。

2 : +;

一元加法操作符,它会将它后面的字符或者对象转型(如果是数值的话就保持不变),其实跟Number对字符的转型是一样的。

+“1”  输出1

+“v1” 输出NaN

3 : !

最后一个就最容易了,它会将一个字符转成布尔值,毋庸置疑,!1返回false,!NaN 返回true.

js判别过滤出ie8、ie7

时间: 2024-08-08 09:41:58

js判别过滤出ie8、ie7的相关文章

python 过滤出某后缀名文件

以从某文件夹过滤出py文件为例: 法1: import glob import os os.chdir(“./”) for file in glob.glob(“*.py”): print file 法2: for file in os.listdir(“./”): if file.endswith(“.py”): print file 法3: for root, dirs, files in os.walk(“./”): for file in files: if file.endswith(

js模拟抛出球运动

js练手之模拟水平抛球运动 -匀加速运动 -匀减速运动 代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>js模拟抛出球运动</titl

通过服务名过滤出服务所使用的端口号

# netstat -upnl|grep ntpd   我这个命令是过滤出ntp服务的 udp端口号 dp        0      0 172.16.1.4:123              0.0.0.0:*                               9591/ntpd udp        0      0 127.0.0.1:123               0.0.0.0:*                               9591/ntpd udp

Java正则表达式过滤出字母、数字和中文

原文:http://blog.csdn.net/k21325/article/details/54090066 1.Java中过滤出字母.数字和中文的正则表达式 (1)过滤出字母的正则表达式 [html] view plain copy [^(A-Za-z)] (2) 过滤出 数字 的正则表达式 [html] view plain copy [^(0-9)] (3) 过滤出 中文 的正则表达式 [html] view plain copy [^(\\u4e00-\\u9fa5)] (4) 过滤出

Linux过滤出时间段之间的日志

如:过滤出8月30号22点到8月31号8点的secure日志 日志格式: Aug 31 03:00:01 localhost crond[21772]: pam_limits(crond:session): unknown limit type 'proc' Aug 31 03:01:01 localhost crond[21775]: pam_limits(crond:session): unknown limit type 'proc' Aug 31 03:01:01 localhost c

js自定义弹出框

js自定义弹出框: 代码如下 <html> <head><title>自定义弹出对话框</title> <style type ="text/css" > .layout { width:2000px; height:400px; border:solid 1px red; text-align:center; } </style> <script type="text/javascript&quo

js实现过滤重复字符和重复数组-javascript技巧

js实现过滤重复字符 <script type="text/javascript"> <!-- String.prototype.noRepeatStr=function(){ var tempArr=new Array(); for(var i=0;i<this.length;i++){ if(tempArr.join('').indexOf(this.charAt(i))==-1) tempArr[tempArr.length]=this.charAt(i)

js 正则过滤 行内 style 样式

js 正则过滤 style 行内样式 及 style 属性 例子:<span style="background:red;color:#fff;border:1px solid red;">你妹</span> js:var reg = /style\s*?=\s*?(['"])[\s\S]*?\1/;var result = '<span style="background:red;color:#fff;border:1px solid

Slideout.js – 触摸滑出式 Web App 导航菜单

Slideout.js 是为您的移动 Web 应用开发的触摸滑出式的导航菜单.它没有依赖,自由搭配简单的标记,支持原生的滚动,您可以轻松地定制它.它支持不同的 CSS3 转换和过渡.最重要的是,它只是4KB . 在线演示      源码下载 您可能感兴趣的相关文章 网站开发中很有用的 jQuery 效果[附源码] 分享35个让人惊讶的 CSS3 动画效果演示 十分惊艳的8个 HTML5 & JavaScript 特效 Web 开发中很实用的10个效果[源码下载] 12款经典的白富美型 jQuer