1.underscore.js阅读总结

1. 判断是不是数组

function isArr(a) {
   return  Array.isArray ? Array.isArray(a) : Object.prototype.toString.call(a) === '[object Array]';
}

console.log(isArr([1,2])); // true

2. 判断是不是对象,排除null

function isObj(a) {
    var type = typeof a;
    return type === 'function' || type === 'object' && !!a;
}
console.log(isObj(null)); // false

3. 判断是不是Dom元素

这里只需要判断两点,首先不能为空,然后nodeType==1

function isDom(a) {
    return !!(a && a.nodeType == 1);
}

4. 用void 0 来代替undefined

underscore中所有用到undefined的地方都用void 0 来代替了,因为undefined并不是一个保留字,他只是全局对象的一个属性,在低版本的浏览器当中可以被修改赋值

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些阅读 2,061评论 0 2
  • 讲在前面 这次选的计划是源码阅读计划,因为之前花时间x重新再过了高程和权威,觉得得看一些实在的东西来提高自己。因此...
    临水照影233阅读 364评论 0 0
  • 第3章 基本概念 3.1 语法 3.2 关键字和保留字 3.3 变量 3.4 数据类型 5种简单数据类型:Unde...
    RickCole阅读 5,211评论 0 21
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 2,615评论 0 7
  • 目录 说明 underscore是一个很有用的javaScript工具库,对函数式编程提供很多方法,所以读源码很适...
    金华每文阅读 492评论 0 0