0%

网站作为一种信息传递的媒介,在如今各类的 Web 项目中,图像资源的使用占比越来越大,因此我们应当注意图像资源的使用方式。如果网站中的图像资源未进行恰当的优化,当网站访问量较大时会产生很大的带宽挑战,同时也会造成大尺寸图像请求时间过长等问题。

图像优化问题主要分为两个方面:图像的选取和使用和图像的加载和显示。本篇文章主要讨论图像的选取和使用。

阅读全文 »

V8 的垃圾回收策略是基于分代式垃圾回收机制。在所有垃圾回收的算法中,没有一种能胜任所有的场景。因为在我们的实际应用中,对象的生存周期长短不一,不同的算法只能针对特定的情况具有最好的效果。

因此目前的垃圾回收算法一般是按照对象的存活时间将内存进行分代,然后对不同的内存代采用不同的垃圾回收算法。

阅读全文 »

最近在做一个 vue 商城的项目,项目中要求首先加载第一页商城的商品列表,当用户滚动查看商品时,在快到达列表底部的时候提前加载第一页商品列表,即诸如淘宝、天猫、京东商城的滚动懒加载。

阅读全文 »

this 是 JavaScript 中最复杂的机制之一。它是一个很特别的关键字,被自动定义在所有函数的作用域中。与词法作用域不同,this 是在运行时进行绑定的,并不是在编写时,它的上下文取决于函数调用的各种条件。this的绑定和函数声明的位置没有任何关系,只取决于函数的调用方式。

阅读全文 »

图的基本概念

在树型结构中,结点间具有分支层次关系,每一层上的结点只能和上一层中的至多一个结点相关,但可能和下一层的多个节点相关。树的关系也叫一对多的关系,而在图状结构中,任意两个结点之间都可能相关,即结点的邻接关系可以是任意的。图的结构是任意两个数据对象之间都可能存在某种特定关系的数据结构,是一种多对多的关系。

阅读全文 »

散列查找解决的一个基本问题是:如何快速搜索到需要的关键词?

我们知道查找的本质是已知一个对象,找到该对象的位置。因此如果我们在安排位置时,通过一个”散列函数“来计算出对象的位置进行存放,当要查找这个对象时,再通过相同的”散列函数“即可直接计算出对象的位置。

因此其时间复杂度几乎是:O(1),即查找时间与问题规模无关!

阅读全文 »