简介
mostly-shopping-hours
是一个可以用于在网站或应用中计算经济活动最频繁发生的时间的 npm 包。它可以应用于各类经济活动,例如购物、餐饮、娱乐等。这个包针对的主要是前端开发者和 Web 应用开发人员。
安装
在终端中运行以下命令,可以完成对 mostly-shopping-hours
的安装:
npm install mostly-shopping-hours
使用
示例代码
-- -------------------- ---- ------- ----- ------------------- - --------------------------------- ----- ------------- - --- ---------------------- -- ------------ ------------------------ ----------- -- ------ -------- ---- --------- -- -- ----------- ----------- -- ------ ------- ---- --------- -- -- ---------- ----------- -- ------ -------- ---- --------- -- -- ----------- ----------- -- ------ -------- ---- --------- -- -- ----------- ----------- -- ------ -------- ---- --------- -- -- ----------- ----------- -- ------ ------- ---- --------- -- -- ---------- ----------- -- ------ -------- ---- -------- -- -- ----------- --- -- --------- ----- ------------- - --------------------------------------- ---------------------------
在控制台中运行上面的代码,可以得到输出:
{ start: '15:00', end: '18:00', confidence: 0.5, sampleSize: 168, weeksConsidered: 1 }
上述结果的意思是:在所设置的时间表中,下午 3 点到晚上 6 点是经济活动最密集的时间段,置信度为 50%。此外,看样本大小,这个时间段是统计结果仅考虑了一周数据的情况下计算出来的。
API
MostlyShoppingHours
对象
类似于其他 JavaScript 类库,MostlyShoppingHours
是一个构造函数,用于创建一个新的 MostlyShoppingHours
对象。可以使用以下方式:
const MostlyShoppingHours = require('mostly-shopping-hours'); const shoppingHours = new MostlyShoppingHours();
调用 new
运算符时,构造函数会创建一个包含以下属性和方法的新对象:
hours: {dayOfWeek: number, start: string, end: string}[]
一个包含七个对象的数组,表示一周中每一天的经济活动起始时间和结束时间。默认为:
-- -------------------- ---- ------- - - ----------- -- ------ -------- ---- --------- -- -- ---------- ----------- -- ------ -------- ---- --------- -- -- ---------- ----------- -- ------ -------- ---- --------- -- -- ---------- ----------- -- ------ -------- ---- --------- -- -- ---------- ----------- -- ------ -------- ---- --------- -- -- ---------- ----------- -- ------ -------- ---- --------- -- -- ---------- ----------- -- ------ -------- ---- --------- -- -- ---------- - -
tz: string
一个可以设定时区的字符串,默认为 "UTC"
。
setHours(hours: {dayOfWeek: number, start: string, end: string}[]): this
设置 hours
属性的值,其中每个包含下列三个属性的对象分别代表一周中某一天的经济活动开始时间和结束时间:
dayOfWeek
: 一个代表周几的数字,从 0(周日)到 6(周六)。start
: 活动的起始时间, 24 小时制的字符串表示。例如,早上 9 点表示为'09:00'
。end
: 活动的结束时间,24 小时制的字符串表示。例如,晚上 10 点表示为'22:00'
。
setTimezone(tz: string): this
设置时区,返回 this
,可以在不同的时区中计算经济活动时间。
getSampleSize(): number
返回用于计算最常活动时间的样本大小。这个值是根据所设置的 hours
属性值每天的活动时长和样本时间跨度计算出来的。
getMostlyShoppingHours(): {start: string, end: string, confidence: number, sampleSize: number; weeksConsidered: number}
计算所设置的经济活动的最常时间,并返回一个对象,包含以下属性:
start
: 一个 24 小时制的字符串,表示经济活动最频繁开始时间。end
: 一个 24 小时制的字符串,表示经济活动最频繁结束时间。confidence
: 一个 0 到 1 之间的小数,描述该结果的置信度。sampleSize
: 一个整数,表示用于计算这个结果的的样本大小。weeksConsidered
: 一个整数,表示样本数据仅基于多少周计算出来的。
总结
mostly-shopping-hours
是一个十分实用的 NPM 包,它可以用于计算经济活动最频繁发生的时间。通过学习使用这个包,我们可以了解到它的工作原理,同时也可以应用其 API 去适应不同场景的需求。希望这篇文章能对你有所帮助,谢谢阅读!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005665581e8991b448e27a8