lodash笔记(数学篇)

这篇博客介绍了lodash库中的一些核心功能,包括数组的求最大值、最小值、按需引入、计算平均值等数学操作。通过示例展示了如何使用_.divide、_.max、_.min、_.maxBy、_.minBy、_.mean、_.meanBy、_.multiply和_.sum等方法,并强调了它们在不同场景下的应用。lodash是一个强大的JavaScript工具库,提供了大量实用函数,能有效提升代码效率。
摘要由CSDN通过智能技术生成

安装引入

  • npm i --save lodash
  • 使用页面
    1、全部引入 import _ from ‘lodash’
    2、按需引入 import x from ‘lodash/x’

详情见官网


1、_.divide(dividend, divisor)

  • dividend (number): 相除的第一个数。
    divisor (number): 相除的第二个数。

如果 value 不是数组, 那么强制转为数组。

_.divide(6, 4);
// => 1.5

_.divide('6', 4);
// => 1.5

_.divide('6', '4');
// => 1.5


2、_.max(array)

  • array (Array): 要迭代的数组。

计算 array 中的最大值。 如果 array 是 空的或者假值将会返回 undefined。

_.max([4, 2, 8, 6]);
// => 8
 
_.max([]);
// => undefined

_.min(array)

  • array (Array): 要迭代的数组。

计算 array 中的最小值。 如果 array 是 空的或者假值将会返回 undefined。

_.min([4, 2, 8, 6]);
// => 2
 
_.min([]);
// => undefined

3、.maxBy(array, [iteratee=.identity])

  • array (Array): 要迭代的数组。
    [iteratee=_.identity] (Function): 调用每个元素的迭代函数。

这个方法类似_.max 除了它接受 iteratee 来调用 array中的每一个元素,来生成其值排序的标准。 iteratee 会调用1个参数: (value) 。

var objects = [{ 'n': 1 }, { 'n': 2 }];
 
_.maxBy(objects, function(o) { return o.n; });
// => { 'n': 2 }
 
// The `_.property` iteratee shorthand.
_.maxBy(objects, 'n');
// => { 'n': 2 }


.minBy(array, [iteratee=.identity])

  • array (Array): 要迭代的数组。
    [iteratee=_.identity] (Function): 调用每个元素的迭代函数。

这个方法类似_.min 除了它接受 iteratee 来调用 array中的每一个元素,来生成其值排序的标准。 iteratee 会调用1个参数: (value) 。

var objects = [{ 'n': 1 }, { 'n': 2 }];
 
_.minBy(objects, function(o) { return o.n; });
// => { 'n': 1 }
 
// The `_.property` iteratee shorthand.
_.minBy(objects, 'n');
// => { 'n': 1 }


4、_.mean(array)

  • array (Array): 要迭代的数组。

计算 array 的平均值。

_.mean([4, 2, 8, 6]);
// => 5

5、.meanBy(array, [iteratee=.identity])

  • array (Array): 要迭代的数组。
    [iteratee=_.identity] (Function): 调用每个元素的迭代函数。

这个方法类似_.mean, 除了它接受 iteratee 来调用 array中的每一个元素,来生成其值排序的标准。 iteratee 会调用1个参数: (value) 。

var objects = [{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }];
 
_.meanBy(objects, function(o) { return o.n; });
// => 5
 
// The `_.property` iteratee shorthand.
_.meanBy(objects, 'n');
// => 5


6、_.multiply(multiplier, multiplicand)

  • augend (number): 相乘的第一个数。
    addend (number): 相乘的第二个数。

这个方法类似_.mean, 除了它接受 iteratee 来调用 array中的每一个元素,来生成其值排序的标准。 iteratee 会调用1个参数: (value) 。

_.multiply(6, 4);
// => 24


7、_.sum(array)

  • array (Array): 要迭代的数组。

计算 array 中值的总和

_.sum([4, 2, 8, 6]);
// => 20

.sumBy(array, [iteratee=.identity])

  • array (Array): 要迭代的数组。
    [iteratee=_.identity] (Function): 调用每个元素的迭代函数。。

这个方法类似_.summin 除了它接受 iteratee 来调用 array中的每一个元素,来生成其值排序的标准。 iteratee 会调用1个参数: (value) 。

var objects = [{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }];
 
_.sumBy(objects, function(o) { return o.n; });
// => 20
 
// The `_.property` iteratee shorthand.
_.sumBy(objects, 'n');
// => 20


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值