Json Web Tokens

这篇文章是对网络上相关信息的总结,详情可以参考《JSON Web Token 入门教程》 使用JWT JWT作为一道具有过期时间的令牌存储在Cookie或localS…

Shadow DOM简介

这篇文章假设您已经掌握了DOM以及与DOM操作相关的JS部分。文中的代码符合ES6语法。 Shadow DOM是什么 一个网页会形成一颗DOM树,树上有很多结点,但过多的结点使结构复杂起来,Shadow DOM允许我们用封装的方式简化…

CSS Functions && CSS Variables

CSS Variables Syntax CSS Functions calc() calc()用于对数值作计算,单位包括长宽(px、vw等)、频率(Hz等)、角度(deg、rad、turn等)、时间(s、ms)、小数和整数。 calc()要求+和-的左右有空格。 例如,widt…

JavaScript原型链档案

原型链是JavaScript中的“继承”。 JavaScript中的“类” 事实上JavaScript一直以来都是基于对象和原型的,除了Number、String、Boolean等基本数据类型之外,JavaScript中的一切都是对象。ES6中新增的class、constructo…

简析依赖反转与依赖注入

他们都用于降低耦合度。 依赖反转(Dependency inversion principle, DIP) 在一个有层级结构的软件系统中,低层向高层提供服务,而高层利用低层的接口继续向更高层提供服务,达到了构建复杂系统的目的。在这个过程…

Mixin一句话介绍

我们通常通过类的继承实现类的复用,但复杂的继承关系会影响程序可读性。Mixin不能单独使用,而是作为方法集合向类提供功能,既实现了代码复用,又降低了复杂度。 Mixin与多继承的区别在于后者容易导致代码复杂,Mi…