您的位置:首页 > Web前端 > JavaScript

underscore学习笔记—更新日志

2014-03-28 11:16 232 查看
写在前面:学习是以1.5.2版本为例

1.6.0   2014.2.10

下载链接:开发版本   生产版本
官网

1、数组函数新增partition(将数组分割为两个数组)

_.partition(array, predicate)

利用partition条件分割为两个数组,一个为true的,一个为false的

_.partition([0, 1, 2, 3, 4, 5], isOdd);
=> [[1, 3, 5], [0, 2, 4]]


2、对象函数新增property(返回对象函数)

_.property(key)

返回一个函数本身将返回任何传入的对象的关键属性。

var mo = {name: 'moe'};
'moe' === _.property('name')(mo);
=> true


3、对象函数新增matches(返回包含指定对象函数)

_.matches(attrs)

返回一个函数,将告诉你如果传入的对象包含了所有存在的属性的键/值特性。

function (obj) { if (obj === attrs) return true;

var ready = _.matches({selected: true, visible: true});
var list = [{a : 'a'},{b:'b'}];
var readyToGoList = _.filter(list, ready);
=>{a:"a"}


4、新增实用函数constant(返回包含参数的值得函数)

_.constant(value)

创建一个返回值和参数值相等的函数,是_.identity的高级命令

var moe = {name: 'moe'};
moe === _.constant(moe)();
=> true


5、新增函数now(返回时间戳)

_.now()
对debounce 和throttle有用
_.now();
=> 1392066795351

6、修订函数partial(可以预留参数位置)

_.partial(function, *arguments)

原来:局部应用一个函数填充在任意数值的参数, 不改变其动态this值。和bind方法很相近。

var add = function(a, b) { return a + b; };
add5 = _.partial(add, 5);
add5(10);
=> 15
新增:可以用_为参数预留位置,在调用时填充

var add = function(a, b) { return a + b; };
add5 = _.partial(add, _);
add5(10, 1)
=>11


7、each函数,基本无变化

8、修订函数keys(对待非对象由之前返回抛错改为返回空数组)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript underscore