超实用 JS 代码段笔记(一)
序1:30段简单代码段(有删减)
1 . 区分 IE 和 非 IE 浏览器
if(!+[1,]){ console.log('ie浏览器'); }else{ console.log('非ie浏览器'); }
2. 将日期直接转换为数值。
3. 最简单的选择运算符 ||
var a = 0 || 3; console.log(3);
4. 单链式运算 ( 如:a++ - 1 )
var a = 10; console.log(a++ - 1); // 先执行 a - 1, 在执行 a = a + 1
5. 跳转至新页面,并且保证浏览器不会在回退。
// 一开始我打开的是 baidu , 使用 location.repalce 跳转之后浏览器返回不到百度了。 location.replace('http://www.wiz.cn');
6. 验证是否为负数的正则表达式
/^-\d+$/.test(num);
7. 用 JS 打印页面, window.print() 属于浏览器内置的 API
window.print();
8. 把一个值转换成 布尔型值的最简单方式, 使用 " ! " 操作符两次,可以把一个值转换为布尔类型
!! 'demo'; // true !!''; // false !!'0' // true !!{} // true
9. 判断浏览器是否支持 HTML5, 在 HTML5 中 navigator.geolocation; 可以获取当前设备的位置,通过 双 "!" 就可以判断是否支持此 API, 即是否支持 HTML5
!!navigator.geolocation;
10. 判断浏览器是否支持 Canvas
function isCanvas(){ return !!document.createElement('canvas').getContext; } isCanvas();
11. 判断浏览器版本
window.navigator.appVersion;
12. 实现对 Windows、Mac、Linux、UNIX 操作系统的判断
var osType="", windows = (navigator.userAgent.indexOf("Windows", 0) != -1) ? 1 : 0, mac = (navigator.userAgent.toLowerCase().indexOf("mac", 0) != -1) ? 1 : 0, linux = (navigator.userAgent.indexOf("Linux", 0) != -1) ? 1 : 0, unix = (navigator.userAgent.indexOf("X11", 0) != -1) ? 1 : 0; if(windows) osType = "Windows"; else if(mac) osType = "Mac"; else if(linux) osType = "Linux"; else if(unix) osType = "UNIX"; console.log(osType);
13. 使用原生 JS 判断是否是移动设备浏览器
var mobileReg = /iphone|ipad|android.*mobile|windows.*phone|blackberry.*mobile/i; if(mobileReg.test(window.navigator.userAgent.toLowerCase())){ console.log('移动设备'); }else{ console.log('非移动设备'); }
2. 常用代码段收集