node lodash模块工作中常用操作



1.   _.map(collections,function)
function square(n) {
  return n * n;
}
_.map([4, 8], square);
// => [16, 64]

2. _.pick 从某个对象中选择部分属性组成新的对象
var objA = {"name": "colin", "car": "suzuki", "age": 17};  

var objB = _.pick(objA, ['car', 'age']);  
/{"car": "suzuki", "age": 17}


3. _.find(collection, [predicate=_.identity])
遍历集合中的元素,返回最先经 predicate 检查为真值的元素。 返回第一个匹配到的元素或对象
var users = [
  { 'user': 'barney',  'age': 36, 'active': true },
  { 'user': 'fred',    'age': 40, 'active': false },
  { 'user': 'pebbles', 'age': 1,  'active': true }
];

_.find(users, function(o) { return o.age < 40; });
{


4. _.isEmpty(value) 检查值是否是一个空对象
_.isEmpty(null);
// => true      
 
_.isEmpty(true);
// => true
 
_.isEmpty(1);  如果传入数字,最后会返回  [].length === 0。数字被当成了 
// => true
   object object 来判断。
文档里说了传入的是可枚举的对象



5._.groupBy(collection, [iteratee=_.identity])

返回一个组成汇总的对象

_.groupBy([6.1, 4.2, 6.3], Math.floor);
// => { '4': [4.2], '6': [6.1, 6.3] }

// 使用了 `_.property` 的回调结果
_.groupBy(['one', 'two', 'three'], 'length');
// => { '3': ['one', 'two'], '5': ['three'] }

6._.includes(collection,value,[fromindex=0]
检查 value(值) 是否在 collection(集合) 中。如果 collection(集合)是一个字符串,那么检查 value(值,子字符串) 是否在字符串中  如果指定 fromIndex 是负数,那么从 collection(集合) 的结尾开始检索
  1. collection (Array|Object|string): 要检索的集合。
  2. value (*): 要检索的值。
  3. [fromIndex=0] (number): 要检索的 索引位置。        
7.
_.orderBy排序
_.orderBy(_.filter(results, item => !_.isEmpty(item) && item.state === 1), ['createTime'], ['desc'])
先过滤掉results不等于空的对象和状态为1的在根据创建时间排序

 
   
8._.random   在指定范围内获取一个随机值
_.random(20); // 返回 0 到 20的随机数
_.random(15, 20, true); // 返回 15 到 20的浮点型随机数;

 
   
9.
_.assign扩展对象
var objA = {"name": "colin", "car": "suzuki"};
var objB = {"name": "james", "age": 17};

console.log(_.assign(objA, objB)); { name: 'james', car: 'suzuki', age: 17 }相同属性的值会取最后一个
 
   
 
   
10 omit从对象中删除属性 与delete obj.属性相同效果
 
   
  • var objA = {"name": "colin", "car": "suzuki", "age": 17};
bjA = _.omit(objA, ['car', 'age']); // {"name": "colin"}


11.
  • join: 将array中所有元素用separator 分隔符连接,返回该字符串
    • _.join(['a', 'b', 'c'], '~'); // => 'a~b~c' 第二个参数如果不传将保持原有数组返回

猜你喜欢

转载自blog.csdn.net/qq_24884955/article/details/80354568