2022-10-21 0032 笔记统计-Dataview 忽然想看一下自己有多少篇笔记,看看自己上次记笔记是什么时候(咕咕了多久),卷起来! 效果展示: 笔记总数:451 标签总数:71 最早笔记:1078 天前 上次更新:2022/11/11 14:11:59 查询代码Dataviewjs 代码块 1234567891011121314151617181920212223242526272829303132/** @type {number} 最近更新时间 */let newestTime = 0/** @type {number} 最早创建时间 */let oldestTime = Date.now()/* 遍历所有笔记 */const pages = dv.pages().filter(e=>{ /** * 判断文件类型和文件夹名称 * 如果不是 md 后缀的不算笔记 * 如果在 Templates 文件夹下的不算笔记 * 这里用了正则,但是很简单,比如你可以把 AnyFolder 换成任何顶层文件夹的名称 */ if(e.file.ext !== 'md' || /^(Templates|AnyFolder)/.test(e.file.folder)) { return false } /** @type {number} 如果有更早的创建时间则存储 */ const createdTime = +new Date(e.file.frontmatter.created) /** @type {number} 如果有更晚的创建时间则存储 */ const updatedTime = +new Date(e.file.frontmatter.updated) if(createdTime<oldestTime) oldestTime = createdTime if(updatedTime>newestTime) newestTime = updatedTime return true})/* 弄个列表输出 */dv.list(dv.array([ "笔记总数:"+pages.length, "标签总数:"+dv.pages('').file.etags.distinct().length, "最早笔记:"+Math.round((Date.now()-oldestTime)/864e5)+' 天前', /** 使用下面这行写法可以显示具体时间 */ // "最早笔记:"+new Date(oldestTime).toLocaleString("zh-CN").split("T")[0], "上次更新:"+new Date(newestTime).toLocaleString("zh-CN").split("T")[0],])) 前一篇 0033 侧边栏按钮排序-CSS-Snippets 后一篇 0031 备份和同步