zoukankan      html  css  js  c++  java
  • 从zepto中学习方法

    前言,今天开始学习Zepto源码,这里仅仅几下里面能用到的方法。。陆续补充ing...

    一,判断类型函数

    1   function type(obj) {
    2         return obj == null ? String(obj) : Object.prototype.toString.call(obj) || "Object";
    3     }

     稍作改变:

     1 (function () {
     2 
     3 
     4     function type(value) {
     5         var getType = Object.prototype.toString;
     6         var typeTemp = getType.call(value);
     7         switch (typeTemp) {
     8             case '[object Array]':
     9                 return "Array";
    10                 break;
    11             case '[object Date]':
    12                 return "Date";
    13                 break;
    14             case '[object Boolean]':
    15                 return "Boolean";
    16                 break;
    17             case '[object Number]':
    18                 return "Number";
    19                 break;
    20             case '[object Function]':
    21                 return "Function";
    22                 break;
    23             default:
    24                 return "unKnow";
    25         }
    26     }
    27 
    28 
    29     function isArray(value) {
    30         return type(value) == "Array";
    31     }
    32 
    33     function isDate(value) {
    34         return type(value) == "Date";
    35     }
    36 
    37     function isBoolean(value) {
    38         return type(value) == "Boolean";
    39     }
    40 
    41     function isNumber(value) {
    42         return type(value) == "Number";
    43     }
    44 
    45     function isFunction(value) {
    46         return type(value) == "Function";
    47     }
    48 
    49 })();

     补充

    用getPrototypeOf和isProtoypeOf判断类型

    1     var time = new Date();
    2     var result = (Object.getPrototypeOf(time) === Date.prototype);
    3     console.log(result);
    4     result=Date.prototype.isPrototypeOf(time);
    5     console.log(result)

    补充2016-12-05 11:19:40 

    网上一方法,用于判断类型

    Object.prototype.toString.call(arg).slice(8,-1)

    直接获取类型。。

    二,replace结合表达式去改变字符串

    1   var str = "123aAbc";
    2 
    3     function stringDividerBetweenUnderline(str) {
    4         return str.replace(/(d+)([a-z]|[A-Z]+)/g, "$1_$2")
    5     }
    6 
    7     var ss = stringDividerBetweenUnderline(str);
    8     console.log(ss);

     三,获取css属性

    1 var con1=document.querySelector(".con1");
    2     console.log(window.getComputedStyle(con1).getPropertyValue("color"));

    注意这里获取到的颜色是reba(255,0,0)我设置的是red

  • 相关阅读:
    hihoCoder #1078 : 线段树的区间修改
    hihoCode r#1077 : RMQ问题再临-线段树
    hihoCoder #1070 : RMQ问题再临
    hihoCoder #1068 : RMQ-ST算法(模板)
    LeetCode Valid Sudoku 有效数独
    150 Evaluate Reverse Polish Notation 逆波兰表达式求值
    149 Max Points on a Line 直线上最多的点数
    148 Sort List 链表上的归并排序和快速排序
    147 Insertion Sort List 链表插入排序
    146 LRU Cache 最近最少使用页面置换算法
  • 原文地址:https://www.cnblogs.com/chenluomenggongzi/p/5974155.html
Copyright © 2011-2022 走看看