zoukankan      html  css  js  c++  java
  • JavaScript代码段整理笔记系列(二)

    上篇介绍了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 function addEvents (type, element, fun) {
     2 
     3     if (element.addEventListener) {
     4 
     5     }
     6 
     7     else if(element.attchEvent) {
     8 
     9        element.attachEvent('on' + type, fun);
    10 
    11     }
    12 
    13     else {
    14 
    15          element['on' + type] = fun;
    16 
    17     }
    18 
    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 必须知道的事儿,敬请关注!

    ——无厘果果·原创出品
  • 相关阅读:
    python使用mysql数据库
    拆掉思维里的墙
    拆掉思维里的墙
    拆掉思维里的墙
    loadrunner通过web的post请求方法测接口 2
    loadrunner通过web的post请求方法测接口 2
    loadrunner通过web的post请求方法测接口 1
    luogu P1186 玛丽卡
    luogu P1855 榨取kkksc03
    暑期前复习
  • 原文地址:https://www.cnblogs.com/JennyZhang-sharing/p/4458647.html
Copyright © 2011-2022 走看看