美文网首页优美编程WEB前端程序开发Web前端之路
相见恨晚的loadsh函数-Date、Math、Number、S

相见恨晚的loadsh函数-Date、Math、Number、S

作者: 小遁哥 | 来源:发表于2019-10-08 10:50 被阅读0次

    Lodash 中文文档 打开开发者工具,可以直接在控制台调试。

    -1 _.random([lower=0], [upper=1], [floating])

    大于等于 lower ,小雨等于upper,如果只提供一个参数返回一个0到提供数之间的数。 如果 floating 设为 true,或者 lower 或 upper 是浮点数,结果返回浮点数。

    _.random(0, 5);
    // => an integer between 0 and 5
     
    _.random(5);
    // => also an integer between 0 and 5
     
    _.random(5, true);
    // => a floating-point number between 0 and 5
     
    _.random(1.2, 5.2);
    // => a floating-point number between 1.2 and 5.2
    

    0 _.floor(number, [precision=0])

    这个可以充当截取的功能哦!
    比如后台返回两个物品的相似度为0.981213231,现在要求保留小数点后两位,(0.998).toFixed(2)的结果为1,就尴尬了,toFixed是个陷阱

    _.floor(4.006);
    // => 4
     
    _.floor(0.046, 2);
    // => 0.04
     
    _.floor(4060, -2);
    // => 4000
    

    1._.now()

    Date.now() 简略些...

    获得 Unix 纪元 (1 January 1970 00:00:00 UTC) 直到现在的毫秒数。

    _.now();
    //1570464361543
    

    2 _.ceil(number, [precision=0])

    根据 precision(精度) 向上舍入 number。( precision(精度)可以理解为保留几位小数。)

    _.ceil(4.006);
    // => 5
     
    _.ceil(6.004, 2);
    // => 6.01
     
    _.ceil(6040, -2);
    // => 6100
    

    _.round 根据 precision(精度) 四舍五入 number。

    3 _.sum(array)

    计算 array 中值的总和

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

    _.sumBy 接受 iteratee 来调用 array中的每一个元素,来生成其值排序的标准
    _.min 计算 array 中的最小值。 如果 array 是 空的或者假值将会返回 undefined。
    _.minBy 接受 iteratee 来调用 array中的每一个元素,来生成其值排序的标准
    _.mean 计算 array 的平均值。
    _.meanBy 接受 iteratee 来调用 array中的每一个元素,来生成其值排序的标准
    _.max 计算 array 中的最大值。 如果 array 是 空的或者假值将会返回 undefined。
    _.maxBy 接受 iteratee 来调用 array中的每一个元素,来生成其值排序的标准

    4 _.escapeRegExp([string=''])

    转义 RegExp 字符串中特殊的字符 "^", "$", "", ".", "*", "+", "?", "(", ")", "[", "]", "{", "}", 和 "|" in .

    _.escapeRegExp('[lodash](https://lodash.com/)');
    // => '\[lodash\]\(https://lodash\.com/\)'
    

    5 _.template([string=''], [options={}])

    这个方法支持其他选项,可以自定义模板格式,下面之列出常用的一种。

    创建一个预编译模板方法,可以插入数据到模板中 "interpolate" 分隔符相应的位置。

    var compiled = _.template('hello ${ user }!');
    //${ user } user左右空格不是必须的
    compiled({ 'user': 'pebbles' });
    

    6_.capitalize([string=''])

    转换字符串string首字母为大写,剩下为小写。

    _.capitalize('FRED');
    // => 'Fred'
    

    _.lowerFirst 转换字符串string的首字母为小写。
    _.upperFirst 转换字符串string的首字母为大写。

    _.toLower 转换整个string字符串的字符为小写
    _.toUpper 转换整个string字符串的字符为大写
    _.upperCase 转换字符串string为 空格 分隔的大写单词。
    _.lowerCase 转换字符串string以空格分开单词,并转换为小写。

    7 _.camelCase([string=''])

    转换字符串string驼峰写法

    _.camelCase('Foo Bar');
    // => 'fooBar'
     
    _.camelCase('--foo-bar--');
    // => 'fooBar'
     
    _.camelCase('__FOO_BAR__');
    // => 'fooBar'
    

    _.kebabCase 转换字符串stringkebab case.
    _.snakeCase 转换字符串stringsnake case.
    _.startCase 转换 string 字符串为 start case.

    8 _.inRange(number, [start=0], end)

    是否在 start 与 end 之间,但不包括 end。 如果 end 没有指定,那么 start 设置为0。 如果 start 大于 end,那么参数会交换以便支持负范围

    _.inRange(3, 2, 4);
    // => true
     
    _.inRange(4, 8);
    // => true
     
    _.inRange(4, 2);
    // => false
     
    _.inRange(2, 2);
    // => false
     
    _.inRange(1.2, 2);
    // => true
     
    _.inRange(5.2, 4);
    // => false
     
    _.inRange(-3, -2, -6);
    // => true
    

    _.clamp 返回限制在 lower 和 upper 之间的值。

    9_.escape([string=''])

    转义string中的 "&", "<", ">", '"', "'", 和 "`" 字符为HTML实体字符。

    _.escape('fred, barney, & pebbles');
    // => 'fred, barney, &amp; pebbles'
    

    _.unescape _.escape的反向版。 这个方法转换string字符串中的 HTML 实体 &amp;, &lt;, &gt;, &quot;, &#39;, 和 &#96; 为对应的字符。

    10_.truncate([string=''], [options={}])

    截断string字符串,如果字符串超出了限定的最大值。 被截断的字符串后面会以 omission 代替,omission 默认是 "..."。

    _.truncate('hi-diddly-ho there, neighborino');
    // => 'hi-diddly-ho there, neighbo...'
     
    _.truncate('hi-diddly-ho there, neighborino', {
      'length': 24,
      'separator': ' '
    });
    // => 'hi-diddly-ho there,...'
     
    _.truncate('hi-diddly-ho there, neighborino', {
      'length': 24,
      'separator': /,? +/
    });
    // => 'hi-diddly-ho there...'
     
    _.truncate('hi-diddly-ho there, neighborino', {
      'omission': ' [...]'
    });
    // => 'hi-diddly-ho there, neig [...]'
    

    11_.trim([string=''], [chars=whitespace])

    Es6 有类似实现

    从string字符串中移除前面和后面的 空格 或 指定的字符。

    _.trim('  abc  ');
    // => 'abc'
     
    _.trim('-_-abc-_-', '_-');
    // => 'abc'
     
    _.map(['  foo  ', '  bar  '], _.trim);
    // => ['foo', 'bar']
    

    _.trimEnd 从string字符串中移除后面的 空格 或 指定的字符。
    _.trimStart 从string字符串中移除前面的 空格 或 指定的字符。

    12_.startsWith([string=''], [target], [position=0])

    Es6 有类似实现

    检查字符串string是否以 target 开头。

    ···
    _.startsWith('abc', 'a');
    // => true

    _.startsWith('abc', 'b');
    // => false

    _.startsWith('abc', 'b', 1);
    // => true
    ···

    _.endsWith 检查字符串string是否以给定的target字符串结尾。

    13 _.pad([string=''], [length=0], [chars=' '])

    Es6 有类似实现

    如果string字符串长度小于 length 则从左侧和右侧填充字符。 如果没法平均分配,则截断超出的长度。

    _.pad('abc', 8);
    // => '  abc   '
     
    _.pad('abc', 8, '_-');
    // => '_-abc_-_'
     
    _.pad('abc', 3);
    // => 'abc'
    

    _.padStart 如果string字符串长度小于 length 则在左侧填充字符。 如果超出length长度则截断超出的部分。
    _.padEnd 如果string字符串长度小于 length 则在右侧填充字符。 如果超出length长度则截断超出的部分。

    相关文章

      网友评论

        本文标题:相见恨晚的loadsh函数-Date、Math、Number、S

        本文链接:https://www.haomeiwen.com/subject/okyvpctx.html