二维码的前世今生
和一维码相比,二维码的信息承载量更大,能表达的信息更加多样化。比如,同样是识别商品,一维码只能展示出商品的名称、价格、产地等少量基础信息,二维码则可以展示出更详尽的信息,甚至扫码后还能获得图片、视频、音频等不同类型的信息。
本文将为你介绍打印 HTML 页面时用到的相关 CSS 知识和一些重要属性,如 page-break-before
、page-break-after
、page-break-inside
以及 @page
指令。这些属性可放心使用,它们均得到现代浏览器的支持。
领域特定语言 DSL 是一种旨在特定领域下的上下文的语言。这里的领域是指某种商业上的上下文(例如银行业、保险业等),也可以指某种应用程序的上下文。与之相比的另一个概念是通用语言( GPL),通用语言则可以广泛应用于各种商业或应用问题当中。
Promise 是 js 里面非常重要的一部分,搞懂了 Promise 才能更好的去理解 async
, await
和 generator
。但是往往很多时候就是不理解 Promise 的机制,所以这次通过一步步实现一个 Promise 来加深自己的印象,提高自己的思维。
对于前端来说,登录就是把用户信息提交上去,后续就不用前端去担心了。但是,当我真正完整地做过一个登陆 sdk 项目,就会发现这里边的逻辑不是那么简单。本文总结了目前各种主流系统登录方式,包括:Session、JWT、单点登录(SSO)以及 OAuth2。
ES2015(即:ES6)引入了模块的概念,提供了 export
和 import
2 个主要的语句(API)。相对于社区实现的 JS 模块管理方案,ES6 模块管理更加强大和灵活,最重要的是,这是 ECMAScript 官方推出的 JS 模块管理方案,是每位前端开发者需要掌握的模块化方案。