20个Lodash 函数瞬间提升代码逼格

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20个Lodash 函数瞬间提升代码逼格相关的知识,希望对你有一定的参考价值。

参考技术A 减少重复操作,提升可读性,提升团队性。

获取array中的最后一个元素 array.length - 1可还行

_.head(array) 获取数组 array 的第一个元素。

移除数组array中所有和给定值相等的元素

indexOf、splice可还行

_.pullAt 根据索引 indexes,移除array中对应的元素,并返回被移除元素的数组。
_.pullAll 这个方法类似 _.pull ,区别是这个方法接收一个要移除值的数组。

创建一个去重后的 array 数组副本。使用了 SameValueZero 做等值比较。只有第一次出现的元素才会被保留。

原生forEach 不支持对象,不能退出,这些都帮你解决啦。

还有其他高阶函数哦
_.every 、 _.filter 、 _.find 、 _.findLast
_.forEachRight 等

将数据转化为id可以key值得对象,便于查询,太常用了。

_.countBy 、 _.groupBy 、 _.orderBy 、 _.sortBy

打乱一个集合

sort(()=>Math.random()-0.5) 可还行。

_.sample 从collection(集合)中获得一个随机元素。

_.sampleSize 从collection(集合)中获得 n 个随机元素。

防抖 setTimeout、clearTimeout可还行。

如果用手指一直按住一个弹簧,它将不会弹起直到你松手为止。

也就是说当调用动作n毫秒后,才会执行该动作,若在这n毫秒内又调用此动作则将重新计算执行时间。

节流,限制resize这种再好不过了

将水龙头拧紧直到水是以水滴的形式流出,那你会发现每隔一段时间,就会有一滴水流出。

也就是会说预先设定一个执行周期,当调用动作的时刻大于等于执行周期则执行该动作,然后进入下一个新周期。

推迟调用func,直到当前堆栈清理完毕。 调用时,任何附加的参数会传给func。

_.delay(func, wait, [args]) 延迟 wait 毫秒后调用 func。 调用时,任何附加的参数会传给func。

JSON.parse(JSON.stringfy) 实现深拷贝可还行,还要考虑循环引用问题。

深度判断两个对象的值是否相等,

_.isEmpty 检查 value 是否为一个空对象,集合,映射或者set。
_.isError 检查 value 是否是 Error
_.isElement 检查 value 是否是可能是 DOM 元素。

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

_.floor(number, [precision=0]) 根据 precision(精度) 向下舍入 number。( precision(精度)可以理解为保留几位小数。)
_.round(number, [precision=0])

产生一个包括 lower 与 upper 之间的数。 如果只提供一个参数返回一个0到提供数之间的数。 如果 floating 设为 true,或者 lower 或 upper 是浮点数,结果返回浮点数。

当为了防止后台返回数据存在深层次属性取值失败而导致的渲染问题,再也不用各种? : 、各种||,或是各种assign和扩展运算符了!!!

_.set 设置 object对象中对应 path 属性路径上的值,如果path不存在,则创建。 缺少的索引属性会创建为数组,而缺少的属性会创建为对象

优雅的写 try catch

尝试调用func,返回结果 或者 捕捉错误对象。任何附加的参数都会在调用时传给func。

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

_.escapeRegExp([string='']) 转义 RegExp 字符串中特殊的字符 "^", "$", "", ".", "*", "+", "?", "(", ")", "[", "]", "", "", 和 "|" in .

调用 iteratee n 次,每次调用返回的结果存入到数组中。 iteratee 调用入1个参数: (index)。

生成唯一ID。 如果提供了 prefix ,会被添加到ID前缀上。

至于链式调用,还是少用的好。

在VueCli3.0 中使用Lodash

几个代码提升shell逼格

导读在Linux系统中shell命令能够高效的运行并发的处理任务,shell脚本也并不乏味,不仅有魔音还有shell的颜色显示。下面我们就用shell中的颜色来秒提高shell脚本的逼格。

我们举一个例子:

echo -e"\033[44;37;5m ME \033[0m COOL"

以上命令设置背景成为蓝色,前景白色,闪烁光标,输出字符“ME”,然后重新设置屏幕到缺省设置,输出字符 “COOL”。“e”是命令 echo 的一个可选项,它用于激活特殊字符的解析器。“\033”引导非常规字符序列。“m”意味着设置属性然后结束非常规字符序列,这个例子里真正有效的字符是 “44;37;5” 和“0”。修改“44;37;5”可以生成不同颜色的组合,数值和编码的前后顺序没有关系。

颜色编码含义

编码    颜色/动作 
0       重新设置属性到缺省设置 
1       设置粗体 
2       设置一半亮度(模拟彩色显示器的颜色) 
4       设置下划线(模拟彩色显示器的颜色) 
5       设置闪烁 
7       设置反向图象 
22      设置一般密度 
24      关闭下划线 
25      关闭闪烁 
27      关闭反向图象 
30      设置黑色前景 
31      设置红色前景 
32      设置绿色前景 
33      设置棕色前景 
34      设置蓝色前景 
35      设置紫色前景 
36      设置青色前景 
37      设置白色前景 
38      在缺省的前景颜色上设置下划线 
39      在缺省的前景颜色上关闭下划线 
40      设置黑色背景 
41      设置红色背景 
42      设置绿色背景 
43      设置棕色背景 
44      设置蓝色背景 
45      设置紫色背景 
46      设置青色背景 
47      设置白色背景 
49      设置缺省黑色背景

颜色编码搭配使用

echo -e "\033[31m 红色字 \033[0m"
echo -e "\033[34m 黄色字 \033[0m"
echo -e "\033[41;33m 红底黄字 \033[0m"
echo -e "\033[41;37m 红底白字 \033[0m"

技术分享

Linux 字体颜色30—–37

echo -e "\033[30m 黑色字 \033[0m"
echo -e "\033[31m 红色字 \033[0m" 
echo -e "\033[32m 绿色字 \033[0m" 
echo -e "\033[33m 黄色字 \033[0m" 
echo -e "\033[34m 蓝色字 \033[0m" 
echo -e "\033[35m 紫色字 \033[0m" 
echo -e "\033[36m 天蓝字 \033[0m" 
echo -e "\033[37m 白色字 \033[0m"

技术分享

Linux 字体背景颜色40—–47

echo -e "\033[40;37m 黑底白字 \033[0m" 
echo -e "\033[41;37m 红底白字 \033[0m" 
echo -e "\033[42;37m 绿底白字 \033[0m" 
echo -e "\033[43;37m 黄底白字 \033[0m" 
echo -e "\033[44;37m 蓝底白字 \033[0m" 
echo -e "\033[45;37m 紫底白字 \033[0m" 
echo -e "\033[46;37m 天蓝底白字 \033[0m" 
echo -e "\033[47;30m 白底黑字 \033[0m"

技术分享

颜色编码字体闪烁:

echo -e "\033[42;30;5m wwww \033[0m"
echo -e "\033[47;30;5m wwww \033[0m"

技术分享


原文地址:http://www.linuxprobe.com/use-color-shell.html

本文出自 “小华的博客” 博客,请务必保留此出处http://coderhsf.blog.51cto.com/12629645/1931789

以上是关于20个Lodash 函数瞬间提升代码逼格的主要内容,如果未能解决你的问题,请参考以下文章

逼格瞬间提升100%拥有这5款插件,帮助你工作摸鱼两不误!

几个代码提升shell逼格

有了这几个神器,瞬间逼格就上去了

有了这几个神器,瞬间逼格就上去了

Python提升“技术逼格”的6个方法

验证码这样做,瞬间高出一个逼格