没有合适的资源?快使用搜索试试~ 我知道了~
深入解析Backbone.js框架的依赖库Underscore.js的作用
0 下载量 156 浏览量
2020-10-22
10:29:44
上传
评论
收藏 105KB PDF 举报
温馨提示
试读
4页
主要介绍了深入解析Backbone.js框架的依赖库Underscore.js的作用,用过Node.js的朋友对Underscore一定不会陌生:)需要的朋友可以参考下
资源推荐
资源详情
资源评论
深入解析深入解析Backbone.js框架的依赖库框架的依赖库Underscore.js的作用的作用
主要介绍了深入解析Backbone.js框架的依赖库Underscore.js的作用,用过Node.js的朋友对Underscore一定不会
陌生:)需要的朋友可以参考下
backbone必须依赖underscore.js才能够使用,它必须通过underscore中的函数来完成访问页面元素、处理元素的基本操作。
注:backbone可以很好的与其它js库一起工作,所以说它是一个库,而不是框架。
Underscore并没有对原生对象进行扩展,而是调用_()方法进行封装,一旦封装完成,js对象就变为Underscore对象,也可以
通过Underscore对象的Value()方法获取原生js对象中的数据。(jquery通过$()方法得到Jquery对象)
Underscore总共有60多个函数,按照处理对象的不同,可以分为集合类、数组类、功能函数类、对象类、工具函数类五大类
模块。
underscore template()函数说明:
该函数包含三种模板:
(1)<% %>:包含逻辑代码,渲染后不会展现。
(2)<%= %>:数据类型,渲染后展示数据。
(3)<%- %>:将HTML标记转换为常用字符串,以避免代码攻击。
调用格式:
_.template(templateString, [data], [setting])
没有实现双向数据绑定。
1、、Underscore对象封装对象封装
Underscore并没有在原生的JavaScript对象原型中进行扩展,而是像jQuery一样,将数据封装在一个自定义对象中(下文中
称“Underscore对象”)。
你可以通过调用一个Underscore对象的value()方法来获取原生的JavaScript数据,例如:
// 定义一个JavaScript内置对象
var jsData = {
name : 'data'
}
// 通过_()方法将对象创建为一个Underscore对象
// underscoreData对象的原型中包含了Underscore中定义的所有方法,你可以任意使用
var underscoreData = _(jsData);
// 通过value方法获取原生数据, 即jsData
underscoreData.value();
2、优先调用、优先调用JavaScript 1.6内置方法内置方法
Underscore中有许多方法在JavaScript1.6中已经被纳入规范,因此在Underscore对象内部,会优先调用宿主环境提供的内置
方法(如果宿主环境已经实现了这些方法),以此提高函数的执行效率。
而对于不支持JavaScript 1.6的宿主环境,Underscore会通过自己的方式实现,而对开发者来说,这些完全是透明的。
这里所说的宿主环境,可能是Node.js运行环境,或客户端浏览器。
3、改变命名空间、改变命名空间
Underscore默认使用_(下划线)来访问和创建对象,但这个名字可能不符合我们的命名规范,或容易引起命名冲突。
我们可以通过noConflict()方法来改变Underscore的命名,并恢复_(下划线)变量之前的值,例如:
<script type="text/javascript">
var _ = '自定义变量';
</script>
<script type="text/javascript" src="underscore/underscore-min.js"></script>
<script type="text/javascript">
// Underscore对象
console.dir(_);
// 将Underscore对象重命名为us, 后面都通过us来访问和创建Underscore对象
var us = _.noConflict();
// 输出"自定义变量"
console.dir(_);
</script>
4、链式操作、链式操作
还记得我们在jQuery中是如何进行链接操作吗?例如:
$('a')
.css('position', 'relative')
.attr('href', '#')
.show();
资源评论
weixin_38663837
- 粉丝: 5
- 资源: 946
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功