🎶 Sym - 一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)平台

📕 链滴笔记 - 一款桌面端笔记应用,支持 Windows、Mac 和 Linux

🎸 Solo - B3log 分布式社区的博客端节点,欢迎加入下一代社区网络

♏ Vditor - 一款浏览器端的 Markdown 编辑器

Vditor v2.0.15 发布,支持所见即所得编辑模式

简介该版本主要特性如下:支持所见即所得编辑模式添加初始化默认值参数在此感谢 jakekwak 反馈的 bug 和提出的宝贵建议。所见即所得编辑模式是一个才诞生的 👶,在体验上有许多不足,也存在一些 🐛。在使用过程中如有任何问题可在本帖下方留言或到 GitHub 上提 issue,下个版本中会继续进行优化。升级默认的编辑模式由 Markdown 源码变为所见即所得模式,可根据需要对 option.mode 参数进行修改文档更新

功能 - 属性方法绑定

2020-01-10 描述创建一个函数,使其可以调用指定对象中的属性方法,并且还可以支持将后续提供的任意参数作为柯里化函数中的单一参数。提示返回一个使用 Function.prototype.apply()绑定 context[fn]为 context 的 function 使用扩展运算符...展开后续提供的任意参数和单一参数作为 function 中的参数代码 constbindKey=(context,fn,...

功能 - 按顺序运行 Promise

2020-01-09 描述将一个数组中的 Promises 按顺序进行运行。提示使用 Array.prototype.reduce()创建一个 Promise 链当成功调用后,每一次的 promise 都返回下一次的 promise 代码 construnPromisesInSeries=ps=>ps.reduce((p,next)=>p.then(next),Promise.resolve());示例按顺序打印出延迟的

功能 - 属性检测

2019-12-18 描述传入一个 predicate 函数和一个 prop 字符串,然后使用柯里化函数将通过属性调用检查的 object 传递给 predicate。提示获取 obj 对象中的 prop 值将获取的值传递给已提供好的 predicate 函数最终返回该函数的真假值代码 constcheckProp=(predicate,prop)=>obj=>!!predicate(obj[prop]);示例检测对象的长度是否

日期 - 一年中的第几天

2020-01-08 描述从一个 Date 对象中获取该日期位于一年中的第几天。提示使用 newDate()和 Date.prototype.getFullYear()获取传入的 Date 对象的第一天用提供的 date 减去上一步获取的当年的第一天对象,然后再除以每一天的毫秒数,以获取当年的天数使用 Math.floor()将获取的天数进行四舍五入以得到一个恰当的整数代码 constdayOfYear=date=>Ma

日期 - 是否为同一个日期

2020-01-08 描述检查一个日期是否和另外一个日期的相同。提示使用 Date.prototype.toISOString()和严格的全等号 === 来检测第一个日期是否和第二个日期一样代码 constisSameDate=(dateA,dateB)=>dateA.toISOString()===dateB.toISOString();示例输入两个日期,第一个日期是否和第二个日期相等:isSameDate

日期 - 一个日期是否在另一个日期之前

2020-01-06 描述检查一个日期是否在另外一个日期的前面。提示传入两个参数,检测第一个日期是否在第二个日期之前使用大于运算符(<)来进行检查代码 constisBeforeDate=(dateA,dateB)=>dateA<dateB;示例输入两个日期,第一个日期是否在第二个日期之后:isBeforeDate(newDate(2020,01,02),newDate(2020,01,03));//t

日期 - 一个日期是否在另一个日期后面

2020-01-03 描述检查一个日期是否在另外一个日期的后面。提示传入两个参数,检测第一个日期是否在第二个日期之后使用大于运算符(>)来进行检查代码 constisAfterDate=(dateA,dateB)=>dateA>dateB;示例输入两个日期,第一个日期是否在第二个日期之后:isAfterDate(newDate(2020,01,02),newDate(2020,01,03));//fal

日期 - 计算两个日期之间相差的天数

2020-01-02 描述放回两个日期中相差的天数。提示两个 Date 对象相减获取相差的毫秒把相差的毫秒兑换为天数代码 constgetDaysDiffBetweenDates=(dateInitial,dateFinal)=>(dateFinal-dateInitial)/(1000*3600*24);示例 B3log 想法距今有多少天了:getDaysDiffBetweenDates(newDate('2

日期 - 获取明天的日期

2019-12-31 描述返回一个字符串,用于展现明天的日期。提示使用 newDate()获取当前的时间使用 Date.getDate()来往后增加一天使用 Date.setDate()设置结果使用 Date.prototype.toISOString()返回 yyyy-mm-dd 格式的字符串代码 consttomorrow=()=>{lett=newDate();t.setDate(t.getDate()+1)

日期 - 获取时分秒

2019-12-30 描述根据 Date 对象返回一个格式为 HH:MM:SS 的字符串提示使用 Date.prototype.toTimeString()和 String.prototype.slice()获取 Date 对象中的 HH:MM:SS 的部分代码 constgetColonTimeFromDate=date=>date.toTimeString().slice(0,8);示例获取当前的时分秒:getColo

日期 - 返回数值最小的日期

2019-12-27 描述从给定的日期中返回最小的一个。提示在 Math.max 使用 ES6 的展开语法找到最小的 date 值使用 newDate()将最大值转换为 Date 对象代码 constminDate=dates=>newDate(Math.min(...dates));示例从数组中找出最新的一天:constarray=[newDate('2009-12-09'),newDate('2017-4-13'),

日期 - 返回数值最大的日期

2019-12-26 描述从给定的日期中返回最大的一个。提示在 Math.max 使用 ES6 的展开语法找到最大的 date 值使用 newDate()将最大值转换为 Date 对象代码 constmaxDate=dates=>newDate(Math.max(...dates));示例从数组中找出最新的一天:constarray=[newDate('2009-12-09'),newDate('2017-4-13'),

日期 - 是否为工作日

2019-12-25 描述为指定的日期返回一个是否为工作日的布尔表达式。提示传递一个指定的日期对象基于 Date.getDay()使用返回值 0-6 来表示周日-周六,可以使用模运算来返回一个布尔值参数的默认值为当天代码 constisWeekday=(t=newDate())=>{returnt.getDay()%6!==0;};示例今天是否是工作日:isWeekday();//false 指定的日期是否为工

日期 - 是否为周末

2019-12-24 描述为指定的日期返回一个是否为周末的布尔表达式。提示传递一个指定的日期对象基于 Date.getDay()使用返回值 0-6 来表示周日-周六,可以使用模运算来返回一个布尔值参数的默认值为当天代码 constisWeekend=(t=newDate())=>{returnt.getDay()%7===0;};示例今天是否是周日:isWeekend();//false 指定的日期是否为周末:

日期 - 获取昨日日期

2019-12-23 描述返回一个字符串用于展现昨天的日期。提示使用 newDate()获取当前的日期使用 Date.getDate()减去一天,并将结果使用 Date.setDate()进行设置使用 Date.prototype.toISOString()返回一个 yyyy-mm-dd 格式的字符串日期代码 constyesterday=()=>{lett=newDate();t.setDate(t.getDat

2016 - 2019 前端现状对比统计

历史的车轮每一条线都代表着 2016 到 2019 的数据统计,越往上表示使用的人越多,越往右表示有越多的用户想使用。从下图可以看出 React、TypeScript、Express、Jest 越来越受用户的青睐。新特性最让人兴奋的是 JavaScript 做为一种语言并没有停滞不前。从箭头函数到结构,在过去几年中添加的很多重要特性现在已经成为我们编写 JavaScript 的一部分。{"color":["rgb(65

日期 - 毫秒格式化

2019-12-20 描述根据给定的毫秒数,返回人类可读的格式。提示用 ms 除以适当的值,以得到适当的 day,hour,minute,second 和 millisecond 值使用 Object.entries()和 Array.prototype.filter()过滤出非零值*使用 Array.prototype.map()为每一个值创建一个字符串,并为复数添加 s 使用 String.prototype.join(

北京 19 日工作游

Day1 抵达北京,看到了没融化的雪 😁Day2 到最近的商场逛吃有 2 个滑梯,这个是比较小的一个,昆明好像还没见过这样的设计,我也想玩第一天就被北京巨贵的生活水平吓到,原来是去错了超市,虚惊一场忘记名字了,只记得灯光太昏暗。但豆腐硬被我妈说是鸡蛋做的,这应该算另类的点赞吧 Day3-16D 说这是 967 卖艺,每天回去都是洗洗睡的节奏,感觉很累。中午就比较开心了,可以休息 2 小时。每天都是去附近的凯德 Mall 吃饭

日期 - 24 小时制转换为 12 小时制

2019-12-19 描述将一个整数转换为一个带有后缀的字符串,并根据他的值为其填上相应的 am 或者 pm。提示使用条件来检测一个整数应该转换为带有何种后缀标示的 12 小时格式化字符串使用模运算符(%)将大于 24 小时的整数转换为对应的 pm 代码 constgetMeridiemSuffixOfInteger=num=>num===0||num===24?12+'am':num===12?12+'pm':num<