摘要:
(一)前置知识 开始前,我们先来复习一下HTTP的基础知识。 HTTP请求分为:请求行、请求头、空行、请求体(也叫正文、请求实体、请求主体)。 HTTP响应分为:状态行(也叫响应行)、响应头、空行、响应体(也叫正文、响应实体、响应主体)。 在HTTP请求中,最常见的GET请求是没有请求体的(GET的 阅读全文
摘要:
今年7月份,我被公司裁员了,正好35岁。 那天下班后,我正准备回家,一个从无来往的人事突然叫住了我。你知道的,人事找你多半没好事,我本能的有了不祥的预感。 果然。 来的太突然,我有点懵,这是我没想到,也无法接受的。我对自己当时的处境很满意,待遇不错,工作很闲,我有富足的心智带宽去读书和思考,写作也开 阅读全文
摘要:
概念是学习的基础。在学习JS中的文件操作之前,先把文件相关的各种概念搞清楚,很有好处。 1. 二进制: 计算机硬件仅能处理和存储二进制数据,所以不管是你正在写的代码,还是你硬盘里的小姐姐,都是以二进制的形式存储于电脑的内存和硬盘里的。 2. 编码规则: 二进制计算机看得懂,我们看不懂怎么办啊?我们能 阅读全文
摘要:
搞明白这个,能帮助我们理解开发中出现的很多问题。 一、我们先来回顾一下vue模板的渲染过程: (1)执行render函数,生成虚拟DOM。 render函数是根据render、templete、el这三个选项得来的,优先级依次降低。如果有render函数,则直接使用;否则如果有templete选项, 阅读全文
摘要:
如果你和我一样,以前对vue生命周期的理解仅限于生命周期钩子,那么本文可以让我们更深入一层,理解vue在生命周期各个阶段所做的事,对我们对vue的理解和使用很有好处。 (1)通过new Vue()创建新的vue实例 不管页面还是组件,都是一个个vue实例。一个vue应用,其实就是一个个vue实例的嵌 阅读全文
摘要:
在明白原理之前,我们有很多表面现象、使用场景需要记忆。明白了原理后,你会发现它们已经不需要记了,因为从原理出发,你自己都能把它们推导出来,一切是那么的自然而然。感觉就是:这还用记吗?很明显嘛! 之前我对vue的响应式原理,只是一知半解,导致开发中经常会出现疑问,比如:为什么有的数据它不响应?模板中用 阅读全文
摘要:
我们知道,用户键盘输入的事件有3个:keydown、keypress、keyup。可这三位各有各的缺点,没一个让人省心的。 keypress,无法拿到用户最新的输入值,在输入中文时还不触发。keyup,能拿到最新输入值了,但已经无法通过 preventDefault() 阻止输入。 比如这个场景:把 阅读全文
摘要:
require()、import、import()是我们常用的引入模块的三种方式,代码中几乎处处用到。如果对它们存在模糊,就会在工作过程中不断产生困惑,更无法做到对它们的使用挥洒自如。今天我们来一起捋一下,它们之间有哪些区别? 一、前世今生 学一个东西,先弄清楚它为什么会出现、它的发展历史、它是做什 阅读全文
摘要:
本人之前对Class一直不够重视。平时对原型的使用,也仅限于在构造函数的prototype上挂属性。原型尚且用不着,更何况你Class只是原型的一颗语法糖? 直到公司开始了一个webgis项目,使用openlayers。看了下openlayers的代码,整个api都是用Class构建的。我才意识到, 阅读全文
摘要:
让多个异步任务按照我们的想法执行,是开发中常见的需求。今天我们就来捋一下,如何让多个异步任务并行,串行,以及并行串行相结合。 一、并行 并行是使用最多的方式,多个相互间没有依赖关系的异步任务,并行执行能够提高效率。 我们最经常用的,是Promise.all() 。 function f1() { r 阅读全文