backbone学习笔记(1)- underscore

Posted by luoway on November 7, 2015

Backbone,英文意思是:勇气,脊骨。backbone.js提供了一套web开发的框架,它是基于jquery和underscore的一个js框架。

在正式开发Backbone应用之前,有必要介绍backbone的依赖库underscore.js,因为backbone.js不能独立使用,必须通过依赖库underscore.js中的函数完成访问页面元素、处理元素的基本操作。

开始学习underscore

Underscore.js 中文文档

  1. Underscore对象封装
    Underscore没有对原生JavaScript对象进行扩展,而是调用_()方法进行封装,一旦封装完成,原生JavaScript对象便成为一个Underscore对象,可以使用Underscore的对象方法。

  2. Underscore类型模块及部分方法

    • Collection:
      • each()、map() 遍历集合元素
      • find()、filter() 查找、过滤
      • max()、min() 返回最大、最小值
      • sortBy()、groupBy() 返回排序、分组的新列表
    • Arrays:
      • first()、last() 取首、末元素或首、末几个元素的数组
      • indexOf()、lastIndexOf() 首次、最后出现位置
      • without()、union() 排除数组元素、组合数组元素,返回新数组
    • Functions:
      • delay() 延迟执行
      • once() 仅执行一次,再次执行once()无效
      • wrap() 包装函数
      • compose() 有序包含多个函数
    • Objects:
      • keys()、values() 分别获取键值对对象的所有键、所有值到新数组
      • pick()、omit() 挑选、排除key属性
      • defaults() 设置对象的默认属性值
      • has() 检测属性是否存在
    • Utility:
      • random() 返回min到max之间(含min和max)的随机数
      • escape()、unescape() 编码、解码
      • template() 解析模版标签
        <% %>:标签中包含的通常是JavaScript代码,在页面渲染数据时被执行
        <%= %>:标签中包含的通常是变量名、函数名、对象属性,执行时直接输出该数据
        <%- %>:标签在输出数据时,能将HTML标记转义成字符串
      • chain() 返回封装后的对象,该对象能链式调用