underscore是非常好用的封装库,大小只有4KB,大多插件都是以underscore为基础;

  underscore分5大部分;集合;数组;函数;对象;工具

  集合:集合就是伪数组,虽然长的和数组一样,但是不存在数组的属性和方法;

  假设我们需要数组的方法,他们没有,就需要人为的封装,还需要考虑兼容性,太麻烦了;

  underscore就解决了这个问题;  '_'为他的调用对象

  1._.each(a,function(ele,index))           each的第一个参数是集合本身,第二个参数为函数,函数里两个参数(第一个参数:里面的元素,第二个参数:就是元素索引)

  2._.map()    用法同_each()   但是他可以对里面元素进行加工,返回处理后的新数组;

  3._.find(arr,function(){})  找到第一个满足条件的元素,没有为undefined;

  4._.filter()   找到所有满足条件的元素,返回新数组;

  集合本身就是数组,所以数组也可以运用集合的方法;

  数组:

  1._.first()  返回数组第一个元素,传递参数n     返回从第一个到第n个参数;

  2._.last()   返回数组中最后一个元素,传递参数n   返回从最后参数到n个参数;

  3._.initial()  删除数组中最后一个元素,传递参数n   返回往前删除n个参数;

  4._.rest()  删除数组中第一个参数,传递参数n,返回从前往后删n个参数;

  5._.Object()  将数组转为对象,不管是几维;

  函数:

  1._.bind(fn,obj)  绑定完之后,返回绑定完后的函数fn,里面的this就是obj;

  2._.delay(fn,5)  等待几秒后执行里面的函数;

  3._.once()  这个函数只能调用一次,不许多个调用;

  4._.after(n,fn)  在运行n次之后才会执行fn函数,(要保证,所有的异步都完成之后才执行) 

  5._before(n,fn)  创建一个函数fn调用不超过n次,如果超过n次,就不再执行,返回最后一个结果,并被记住;

  对象:

  1._.keys()  检索obj中所有可枚举的属性

  2._.allKeys()  将对象上属性和他原型上的属性,列举出来;

  3._.values()  返回所有的属性值;

  4._.extend()  将n个对象合并到一个对象上;

  5._clone()  浅拷贝;

  工具:

  1._times(n.fn)  函数调用n次,函数有个形参,返回为索引;

  2._.random()  返回最大值和最小值的随机整数,如果1个参数,返回0到那个参数的随机数;

  3._.mixin()  如果你有特别好的方法,可以通过这个方法追加到  Underscore.js(1.9.1) 中文文档  里面哦;

  4._.now()  时间戳;

  5._template()  模板,预编译模板;

  这里只是将部分计较重要的方法和大家进行了介绍,

  详情请看   https://www.html.cn/doc/underscore/#each

最新文章

  1. Linux最常用命令的小总结
  2. html 抽奖代码
  3. 使用OpenCV/python进行双目测距
  4. oracle 常用SQL语法手册
  5. 【转载】openCV轮廓操作
  6. 某马-某淘商城的day01--->分析,工程搭建,tomcat插件启动工程,svn,反思
  7. Android 动画——Frame Animation与Tween Animation
  8. 性能测试系列学习 day1
  9. HashMap工作原理 和 HashTable
  10. JVM介绍&自动内存管理机制
  11. 自动化服务部署(二):Linux下安装jenkins
  12. Vue.js 技术揭秘(学习) vue流程
  13. hdu1421_搬寝室
  14. RTTI和反射小结
  15. 小强学渲染之OpenGL状态机理解
  16. Callable接口--有返回值的线程
  17. java之分隔符问题
  18. 异步加载script,提高前端性能(defer和async属性的区别)
  19. 【linux】系统初始化的shell脚本
  20. C++11 POD类型

热门文章

  1. 03 重定向,请求转发,cookie,session
  2. linux---三剑客
  3. 【HAOI2011】problem a
  4. java黑魔法-反射机制-01
  5. nginx日志分割配置实例
  6. C# to IL 7 Pointers(指针)
  7. gaea-basic-components 知识点
  8. openstack 开启 spice远程连接
  9. jmeter --JDBC请求
  10. 阿里云学习笔记之Java Web环境搭建