你的位置:首页 > 软件开发 > Java > lodash用法系列,函数种种

lodash用法系列,函数种种

发布时间:2015-12-01 23:00:10
Lodash用来操作对象和集合,比Underscore拥有更多的功能和更好的性能。官网:https://lodash.com/引用:<script src="http://www.cnblogs.com///cdnjs.cloudflare.com/ajax/li ...

 

Lodash用来操作对象和集合,比Underscore拥有更多的功能和更好的性能。官网:https://lodash.com/首先通过npm安装lodash:在js文件中引用lodash:

 

本系列包括:

 

● lodash用法系列(1),数组集合操作 以上在调用函数的时候是把所有的实参给了函数,而在lodash中,还可以分步输入实参。

 

//接受两个形参var greet = function (greeting, name) {  return greeting + ' ' + name;}//先输入第一个实参var sayHello = _.partial(greet, 'hello');//再输入第二个实参//hello darrenconsole.log(sayHello('darren'));//输入两个实参,第一个用占位符var greetJack = _.partial(greet, _, 'jack');//hi jackconsole.log(greetJack('hi'));
如果先输入第二个实参,就使用partialRight方法。如果使用partialRight而不输入第二个实参,只输入第一个实参,那第二个实参需要用占位符。与parital类似的还有一个方法使curry:

 

var add = function (a, b) {  return a + b;}var c1 = _.curry(add);var c2 = c1(5);var result = c2(6);//11console.log(result);
■ 合成函数,并作为回调函数

 

var collection = [  { first: 'Andrea', last: 'Stewart', age: 28 },  { first: 'Clarence', last: 'Johnston', age: 31 },  { first: 'Derek', last: 'Lynch', age: 37 },  { first: 'Susan', last: 'Rodgers', age: 41 }];var minimal=_.flow(_.identity, _.partialRight(_.pick, ['last','age']));var result=_.map(collection, minimal);//[ { last: 'Stewart', age: 28 },//  { last: 'Johnston', age: 31 },//  { last: 'Lynch', age: 37 },//  { last: 'Rodgers', age: 41 } ]console.log(result);
■ 在函数的方法中显示使用链式

 

function validThru(next, value){  return value && next;}function User(first, last, age){  this.first=first;  this.last=last;  this.age=age;}User.prototype.valid = function(){  return _.chain(this.first) //一旦显式调用chain方法,意味着接下来那些返回值的函数返回wrapper    .isString()    .thru(_.partial(validThru, this.last))//validThru相当于thru的回调函数    .isString()    .thru(_.partial(validThru, this.age))    .isFinite()    .value();}var result = new User('orlando','Olson',25).valid();console.log(result);

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:lodash用法系列,函数种种

关键词:函数

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。