Li Yucang

While there is life there is hope

彻底弄懂Unicode编码

探索字符编码的发展历史

彻底弄懂 Unicode 编码 前言 为什么要有编码? 大家需要明确的是在计算机里所有的数据都是字节的形式存储、处理的。我们需要这些字节来表示计算机里的信息。但是这些字节本身又是没有任何意义的,所以我们需要对这些字节赋予实际的意义。所以才会制定各种编码标准。 编码模型 首先需要明确的是存在两种编码模型 A:简单字符集 在这种编码模型里,一个字符集定义了这个字符集里包含什么字符,...

如何管理大型前端单页面应用

浅谈使用 Vue 构建前端 10w+ 代码量的单页面应用开发底层

如何管理大型前端单页面应用 前言 在单页面前端项目的开发中,随着业务的不断累积,业务前端代码量往往会达到几万行~几十万行,业务复杂度类比 Excel 等桌面应用。管理好 10 万行级甚至百万行级代码的前端应用,已经成为了越来越多前端团队的核心挑战之一。 本文会在主要描述以 Vue 技术栈为技术主体,ToB 端项目业务主体,在构建过程中,遇到或者总结的点,可能并不适合你的业务场景。我会尽...

前端开发中的MVC、MVP、MVVM模式

浅谈软件架构设计模式

前端开发中的 MVC、MVP、MVVM 模式 简介 MVC,MVP 和 MVVM 都是常见的软件架构设计模式(Architectural Pattern),它通过分离关注点来改进代码的组织方式。不同于设计模式(Design Pattern),只是为了解决一类问题而总结出的抽象方法,一种架构模式往往使用了多种设计模式。 要了解 MVC、MVP 和 MVVM,就要知道它们的相同点和不同点。...

CommonJS模块和ES6模块

全面解析前端模块化

CommonJS 模块和 ES6 模块 Module 的语法 概述 历史上,JavaScript 一直没有模块(module)体系,无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装起来。其他语言都有这项功能,比如 Ruby 的 require、Python 的 import,甚至就连 CSS 都有@import,但是 JavaScript 任何这方面的支持都没有,这对开发大型...

js垃圾回收机制

探索内存管理的奥秘

js 垃圾回收机制 JS 内存管理 内存基本概念 无论高级语言,还是低级语言。内存的管理都是: 内存分配:申明变量、函数、对象,系统会自动分配内存 内存使用:读写内存,使用变量、函数等 内存回收:使用完毕,由垃圾回收机制自动回收不再使用的内存 像 C 语言这样的高级语言一般都有底层的内存管理接口,比如 malloc()和 free()。另一方面,JavaScript...

前端安全之CSRF攻击

如何防止CSRF攻击

前端安全之 CSRF 攻击 相比 XSS,CSRF 的名气似乎并不是那么大,很多人都认为“CSRF 不具备那么大的破坏性”。真的是这样吗? CSRF 漏洞的发生 小明的悲惨遭遇 这一天,小明同学百无聊赖地刷着 Gmail 邮件。大部分都是没营养的通知、验证码、聊天记录之类。但有一封邮件引起了小明的注意: 甩卖比特币,一个只要 998!! 聪明的小明当然知道这种肯定是骗子,...

前端安全之XSS攻击

如何防止XSS攻击

前端安全之 XSS 攻击 随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点。在移动互联网时代,前端人员除了传统的 XSS、CSRF 等安全问题之外,又时常遭遇网络劫持、非法调用 Hybrid API 等新型安全问题。当然,浏览器自身也在不断在进化和发展,不断引入 CSP、Same-Site Cookies 等新技术来增强安全性,但是仍存...

彻底搞懂HTTP和HTTPS协议

探究http和https的发展史

彻底搞懂 HTTP 和 HTTPS 协议 HTTP 发展历史 http 协议(超文本传输协议),是一个基于请求与响应,无状态的,应用层的协议,常基于 TCP/IP 协议传输数据,互联网上应用最为广泛的一种网络协议,所有的 WWW 文件都必须遵守这个标准。设计 HTTP 的初衷是为了提供一种发布和接收 HTML 页面的方法。 设计 HTTP 最初的目的是为了将超文本标记语言(HTML)文...

iframe解析

解密iframe中的秘密

iframe 解析 基本概念 先来看个例子: <iframe src="demo.html" height="300" width="500" name="demo" scrolling="auto" sandbox="allow-same-origin"></iframe> iframe 常用属性: frameborder: 是否显示...

内容安全策略(csp)

web安全的终极保障

内容安全策略(csp) 简介 跨域脚本攻击 XSS 是最常见、危害最大的网页安全漏洞。为了防止它们,要采取很多编程措施,非常麻烦。很多人提出,能不能根本上解决问题,浏览器自动禁止外部注入恶意脚本? 有,CSP 全称 Content Security Policy ,CSP 的实质就是白名单制度,开发者明确告诉客户端,哪些外部资源(这里的内容可以指脚本、图片、iframe、font、st...