上篇介绍了15个常用代码段,本篇将把剩余的15个补齐,希望对大家有所帮助!!!


  16.检测Shift、Alt、Ctrl键:

  event.shiftKey;  //检测Shift

  event.altKey;   //检测Alt

  event.ctrlKey;  //检测Ctrl

  17.获取屏幕分辨率的宽、高:

  window.screen.height;  //获取屏幕的高

  window.screen.width;   //获取屏幕的宽

  18.脚本永不出错的方式:

  window.onerror=function(m,f,l){

    return true;

  };

  19.让 JavaScript 处理字符与 ASCII 码之间的转换:

  console.log("a".charCodeAt(0));       //97

  console.log(String.fromCharCode(75));  //K

  charCodeAt()返回指定位置字符的 Unicode 编码;fromCharCode()接收一个指定的 Unicode 值,然后返回一个字符串。

  20.访问对象属性:

  var demo = {name: 'ki'}

  demo.name;  //ki

  demo['name']; //ki

  访问对象属性一般通过两种方式,即“.”或“[ ]”。一般情况下两种方式等效,但是“[ ]”还可以动态设置属性,如:

  var get = 'name';

  demo [get];  //ki

  21.把一个值转换为布尔型:

  !!'demo';  //true

  !!'';      //false

  !!'0';      //true

  !!'1';     //true

  !!{};    //true

  !!true;    //true

  使用"!"操作符两次,可以把一个值转换为布尔型。

  22.判断浏览器是否支持 HTML 5:

  !!navigator.geolocation;

  23.判断浏览器是否支持 Canvas:

  function isCanvas( ) {

    return  !!document.createElement('canvas').getContext;

  }

  24.判断 IE 版本:

  window.navigator.appVersion;

  上述代码返回一个字符串,表示所使用浏览器的版本号。

  25.声明变量的缩略写法与复杂写法:

  /*复杂写法*/

  var x;

  var y;

  var z = 3;

  /*缩略写法*/

  var x, y, z = 3;

  26.采取惰性载入的方案提高函数代码的性能:

  1. 1 function addEvents (type, element, fun) {
  2. 2
  3. 3     if (element.addEventListener) {
  4. 4
  5. 5     }
  6. 6
  7. 7     else if(element.attchEvent) {
  8. 8
  9. 9       element.attachEvent('on' + type, fun);
  10. 10
  11. 11     }
  12. 12
  13. 13     else {
  14. 14
  15. 15       element['on' + type] = fun;
  16. 16
  17. 17     }
  18. 18
  19. 19   }

  所谓惰性载入就是在第一次执行代码后,用函数代码内部的方法覆盖原有代码,即:

  1. var addEvents = (function () {
  2. if(document.addEventListener) {
  3. return function (type, element, fun) {
  4. element.addEventListener(type, fun, false);
  5. }
  6. }
  7. else if(document.attachEvent) {
  8. return function (type, element, fun) {
  9. element.attachEvent('on' + type, fun);
  10. }
  11. }
  12. else {
  13. return function (type, element, fun) {
  14. element['on' + type] = fun;
  15. }
  16. }
  17. })();

  27.捕捉 Ctrl+Enter 按键:

  if(event.ctrlKey && event.keyCode == 13)

  {

    console.log("You pressed the Ctrl + Enter");

  }

  28.获取浏览器的插件数目:

  navigator.plugins.length;

  29.实现对 Windows、Mac、Linux、UNIX 操作系统的判断:

  1. var osType = "",
  2. windows = (navigator.userAgent.indexOf("Windows",0) != -1)?1:0;
  3. mac = (navigator.userAgent.toLowerCase().indexOf("mac",0) != -1)?1:0;
  4. linux = (navigator.userAgent.indexOf(”Linux",0) != -1)?1:0;
  5. unix = (navigator.userAgent.indexOf("X11",0) != -1)?1:0;
  6.  
  7. if(windows) osType = "Windows";
  8. else if(mac) osType = "Mac";
  9. else if(linux) osType = "Linux";
  10. else if(unix) osType = "Unix";
  11. console.log(osType);

  30.使用原生 JavaScript 判断是否是移动设备浏览器:

  1. var mobileReg = /iphone | ipod | androdid.*mobile | windows.*phone | blackberry.*mobile/i;
  2.  
  3.   if((mobileReg.test(window.navigator.userAgent.toLowerCase()))){
  4.  
  5.     alert("移动设备! ");
  6.  
  7.   }else{
  8.  
  9.     alert("非移动设备! ");
  10.  
  11.   }

  至此,30段 JavaScript 代码分享结束,本系列的下一篇将介绍一些学习 JavaScript 必须知道的事儿,敬请关注!

JavaScript代码段整理笔记系列(二)的更多相关文章

  1. JavaScript代码段整理笔记系列(一)

    30段JavaScript代码——上篇 1.如何区分IE及非IE浏览器: if(!+[1,]){ //IE 11 不支持 alert("这是 IE 浏览器"): }else{ al ...

  2. 前端福利!10个短小却超实用的JavaScript 代码段

    JavaScript正变得越来越流行,它已经成为前端开发的第一选择,并且利用基于JavaScript语言的NodeJS,我们也可以开发出高 性能的后端服务,甚至我还看到在硬件编程领域也出现了JavaS ...

  3. C# 代码中调用 Javascript 代码段以提高应用程序的配置灵活性(使用 Javascript .NET 与 Jint)

    一般来说,我们需要在开发应用软件的配置文件中,添加一些参数,用于后续用户根据实际情况,自行调整. 配置参数,可以放在配置文件中.环境变量中.或数据库表中(如果使用了数据库的话).通常,配置数据,以 k ...

  4. 推荐10 个短小却超实用的 JavaScript 代码段

    1. 判断日期是否有效 JavaScript中自带的日期函数还是太过简单,很难满足真实项目中对不同日期格式进行解析和判断的需要.jQuery也有一些第三方库来使日期相关的处理变得简单,但有时你可能只需 ...

  5. 数据段描述符和代码段描述符(二)——《x86汇编语言:从实模式到保护模式》读书笔记11

    这篇博文,我们编写一个C语言的小程序,来解析数据段或者代码段描述符的各个字段.这样我们阅读原书的代码就会方便一点,只要运行这个小程序,就可以明白程序中定义的数据段或者代码段的描述符了. 这段代码,我用 ...

  6. canvas学习之API整理笔记(二)

    前面我整理过一篇文章canvas学习之API整理笔记(一),从这篇文章我们已经可以基本了解到常用绘图的API.简单的变换和动画.而本篇文章的主要内容包括高级动画.像素操作.性能优化等知识点,讲解每个知 ...

  7. 《超实用的JavaScript代码段》—— 读后总结

    这本书全是代码,从头到尾跟着坐下来确实收获很多.比那些古板的教科书式的理解更多,不过书中并不是每个例子都做了,有的作者封装的太多,觉得看了收获不多,就没细看——比如模块渐变.有空好好学学这段的代码. ...

  8. chrome小书签-实用的小功能-javascript代码段

    1.打印页面的所有脚本引用文件及代码段: javascript:var scriptarray=document.getElementsByTagName("script");fo ...

  9. 《JavaScript实用效果整理》系列分享专栏

    整理一些使用的JavaScript效果,在Web开发中遇到的比较好的动态效果,都收藏在这里,对以后的网站开发增加不少的色彩 <JavaScript实用效果整理>已整理成PDF文档,点击可直 ...

随机推荐

  1. 判断一个值是否为null或者undefined

    var a=null; var b=undefined; if(a===null){ //a==null alert("a=null") }else{ alert("a= ...

  2. C站投稿189网盘视频源(UP主篇)

    C站投稿189网盘视频源(UP主篇) 现在C站(吐槽弹幕网)的视频来源基本靠的都是189网盘,比如番剧区的每个视频基本来源于此,不像AB两站,拥有自己的资源服务器,为啥呢?没钱啊.都是外来的视频.本站 ...

  3. Performance Monitor3:监控SQL Server的内存压力

    SQL Server 使用的资源受到操作系统的调度,同时,SQL Server在内部实现了一套调度算法,用于管理从操作系统获取的资源,主要是对内存和CPU资源的调度.一个好的数据库系统,必定在内存中缓 ...

  4. Create an offline installation of Visual Studio 2017 RC

    Create an offline installation of Visual Studio 2017 RC ‎2016‎年‎12‎月‎7‎日                             ...

  5. C# 本质论 第一章 C#概述

    学习新语言最好的办法就是动手写代码. 库(或称为类库)的文件扩展名是.dll,其中dll代表"动态链接库(Dynamic Link Library)". 不要在标识符中使用单词缩写 ...

  6. DotNet 资源大全

    awesome-dotnet 是由 quozd 发起和维护.内容包括:编译器.压缩.应用框架.应用模板.加密.数据库.反编译.IDE.日志.风格指南等. https://github.com/jobb ...

  7. C#开发微信门户及应用(2)--微信消息的处理和应答

    微信应用如火如荼,很多公司都希望搭上信息快车,这个是一个商机,也是一个技术的方向,因此,有空研究下.学习下微信的相关开发,也就成为计划的安排事情之一了.本系列文章希望从一个循序渐进的角度上,全面介绍微 ...

  8. Backbone中的model和collection在做save或者create操作时, 如何选择用POST还是PUT方法 ?

    Model和Collection和后台的WEB server进行数据同步非常方便, 都只需要在实行里面添加一url就可以了,backbone会在model进行save或者collection进行cre ...

  9. .NET RESTful Web Services入门

    很早之前看到过RESTful Web Services,并未在意,也没找相关资料进行学习.今天偶尔有一机会,就找了点资料进行研究,发现RESTful真是“简约而不简单”.下面用示例来说明: 1 项目结 ...

  10. wamp 服务器安装问题 及cmd常用命令 和 php mysql数据库常用cmd命令集

    1   官网下载wamp软件包,根据提示安装 2   目录结构:   wamp:   bin/为套件目录 包括mysql apache php log   日志记录 alias 配置 apps 数据库 ...