javascript

Lodash

2019-06-12  本文已影响0人  空气KQ

webpack一开始就引入这个,开始以为没什么用的东西,原来有大文章。

Lodash 通过降低 array、number、objects、string 等等的使用难度从而让 JavaScript 变得更简单。

Lodash 的模块化方法 非常适用于:

_.chunk(array, [size=1])数组分割块。这个跟PHP一样

_.chunk(['a', 'b', 'c', 'd'], 2);
// => [['a', 'b'], ['c', 'd']]
 
_.chunk(['a', 'b', 'c', 'd'], 3);
// => [['a', 'b', 'c'], ['d']]
image.png
image.png image.png

_.compact(array)创建新的数组,去掉false, null, 0, "", undefined, 和 NaN 都是被认为是“假值”

_.compact([0, 1, false, 2, '', 3]);
// => [1, 2, 3]

_.concat(array, [values])创建一个新数组,将array与任何数组 或 值连接在一起。

var array = [1];
var other = _.concat(array, 2, [3], [[4]]);
 
console.log(other);
// => [1, 2, 3, [4]]

_.difference(array, [values])创建一个具有唯一array值的数组,每个值不包含在其他给定的数组中

_.difference([3, 2, 1], [4, 2]);
// => [3, 1]

.differenceBy(array, [values], [iteratee=.identity])进行比较,使用第三的函数作为比对计算

这个方法类似_.difference ,除了它接受一个 iteratee (愚人码头注:迭代器), 调用arrayvalues 中的每个元素以产生比较的标准。 结果值是从第一数组中选择。iteratee 会调用一个参数:(value)。(愚人码头注:首先使用迭代器分别迭代arrayvalues中的每个元素,返回的值作为比较值)。

_.differenceBy([3.1, 2.2, 1.3], [4.4, 2.5], Math.floor);
// => [3.1, 1.3]
 
// Math.floor() 方法返回小于等于x的最大整数。3.1=3,2.5=2,2.2,=
// The `_.property` iteratee shorthand.
_.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');
// => [{ 'x': 2 }]

说白了

  var a=_.differenceBy([3.1, 2.2, 1.3], [4.4, 2.5], function(value){
        values=[4.4, 2.5];
        for ( var i in values)
        {
            if(Math.floor(values[i])==Math.floor(value))
            {
                return true;
            }
        }
        return false;

    });
    console.log(a);

https://www.html.cn/doc/lodash/

上一篇 下一篇

猜你喜欢

热点阅读