折口木木

一切伟大的思想和行动都有一个微不足道的开始

标签:基础

TypeScript:Aho–Corasick算法实现敏感词过滤

TypeScript:Aho–Corasick算法实现敏感词过滤

敏感词过滤应该是许多后端同事经常会遇到的需求,无论是评论、弹幕、文章,都需要做敏感词过滤处理来规避风险。在前端开发中,使用replace函数来替换字符串是我们的常规操作,在这之前我思考过如果用JavaScript来实现敏感词过滤该怎么做。在学习过程中,接触到了Trie树,瞬间有一种拨开云雾见青天的感觉。...

Read More.

简述Node.js内存限制

简述Node.js内存限制

前段时间在Ghost博客系统群与群友交流,谈到了Node内存管理的问题,发现很多小伙伴对Node内存管理完全处于一个“零认识”的状态,这可能与本身工作没有接触到相关,毕竟我们大多数工作可能与DOM打交道,当页面内存占用过多(可能性也很低),几乎不用等GC,用户已经刷新或关闭了网页。...

Read More.

再谈JavaScript作用域

再谈JavaScript作用域

作用域,这个词在编程界经常能听到看到,每一个程序员几乎都有被问到过。在前端圈,面试JavaScript相关知识,这可以算说是一个非常基础的问题了。但很多时候我们可能“只可意会不可言传”,无法用具象的语言来描述它。...

Read More.

CSS权重优先级的计算

说到CSS权重优先级,我想大部分人首先想到的是!important, 但具体是怎么去计算这个权重,大部分人是不太了解的。 1.位置造成的权重 在学CSS时,老师或者是书本都会告诉我们CSS样式应用时都是按照“就近原则”的。...

Read More.

页面导入样式时,使用link和@import的区别

首先,我们引入问题: 页面导入样式时,使用使用link和@import有什么样的区别? link link是我们比较熟悉的一个标签,网页文件不可或缺的,在网页加载过程中引用一个外部样式表。几乎所有浏览器都支持该标签。 定义和用法...

Read More.