<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[huohuoit的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/huohuoit</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; huohuoit]]></copyright><item><title><![CDATA[（七）不只是 huohuo 的 Vue 面试题]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/119568428</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/119568428</guid><author>huohuoit</author><pubDate>Tue, 10 Aug 2021 15:18:22 +0800</pubDate><description><![CDATA[终于来到了框架部分，我们所熟悉的前端框架的底层都是 JS，所以我们更应该关注的是框架的思想原理及源码设计。基本的使用部分，推荐详看官方文档。因为时间和精力优先，这里暂时只给出文章整体脉络，后续慢慢补充完整。


如何理解前端渲染

把数据填充到HTML标签中：模板 + 数据→前端渲染→静态HTML内容

more

如何理解响应式

  ① html5中的响应式：屏幕尺寸的变化导致样式的变化

  ② 数据的响应式：数据的变化导致页面内容的变化

什么是双向数据绑定

当数据发生变化的时候，视图...]]></description><category></category></item><item><title><![CDATA[（六）不只是 huohuo 的 JS 面试题-续]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/119516131</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/119516131</guid><author>huohuoit</author><pubDate>Sun, 08 Aug 2021 16:25:35 +0800</pubDate><description><![CDATA[JS 的内容实在太多太多了，上一篇也写了挺久了，两万多字对于一篇博客来说有些太长了，所以开了这篇续篇。但是目前主要精力不会着手于这篇文章，因为实在太忙了，最近还有一些面试需要准备，框架和算法都还没好好复习到。所以这篇暂时先列出一些主题内容，过段时间再来好好整理啦！

                                                            ...]]></description><category></category></item><item><title><![CDATA[（五）不只是 huohuo 的 JS 面试题]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/119108885</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/119108885</guid><author>huohuoit</author><pubDate>Mon, 26 Jul 2021 15:46:02 +0800</pubDate><description><![CDATA[写过最多的是 JS 相关的文章，做过最完整的是 JS 的思维导图，敲过最多的依然是 JS 代码，我觉得自己的 JS 还算可以了。写到这里的时候，我已经离职一周，参加了几次面试，大多数问题都能按自己的理解回答上来，同时，也让我意识到，那只是我以为的可以，只是没有遇到真正厉害的面试官罢了 ~

写 JS 面试题之前，我纠结了好多次，我已经看过很多优秀的相关文章了，也写过很多各种各样的笔记了，还有没有必要再重复写。面完几次之后，有过正确解答，也有一知半解。有些问题让我意识到，这不是一次重复，而是一次重新认识，..]]></description><category></category></item><item><title><![CDATA[（四）不只是 huohuo 的 CSS 面试题]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/118695021</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/118695021</guid><author>huohuoit</author><pubDate>Tue, 13 Jul 2021 14:21:43 +0800</pubDate><description><![CDATA[终于到了 CSS 篇了，好像可以放松一些了，可能相比于前面两篇，你会觉得 CSS 要简单很多吧。不会吧不会吧，不会真有人觉得 CSS 简单吧？不知道你是否认同， CSS 是所有编程语言里最好玩的一门语言。但是我想你必须认同张鑫旭老师的神作《CSS世界》，从中你势必跟我一样会发现 CSS 是有多么的奇妙啊！

由于个人职业规划上时间原因，我并未好好的读完这本神作，但是在这篇文章里，我一定会在读完后写下自己所有的理解，请保持期待哦！

所以，关于这一篇，目前的结构是以核心面试题问答的形式展开 ~






.]]></description><category></category></item><item><title><![CDATA[（三）不只是 huohuo 的 HTTP/TCP 面试题]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/118467164</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/118467164</guid><author>huohuoit</author><pubDate>Sun, 04 Jul 2021 20:45:15 +0800</pubDate><description><![CDATA[在上一篇，我们讲了很多关于浏览器的问题，其中谈到了很多次 HTTP 、TCP 。那么，这一篇，我们就主要来讲讲关于 HTTP 的问题吧 ~



]]></description><category></category></item><item><title><![CDATA[（二）不只是 huohuo 的 浏览器 面试题]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/118155369</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/118155369</guid><author>huohuoit</author><pubDate>Wed, 23 Jun 2021 16:11:44 +0800</pubDate><description><![CDATA[按照网上习惯性的文章撰写路线，第二篇应该是 CSS，也确实，各种各样的标签，也是由CSS在背后默默地做属性支持。但是对于 HTML 的很多问题，跟浏览器的关系太大了，让我不禁想去好好看看 HTML 跟浏览器之间的那些事。另外，可能一提到前端，绝大多数人都会脱口而出“JavaScript”，不过我觉得 CSS 才是前端技术里最精彩绝伦的技术，所以后面我会对 CSS 做一个特殊处理，先让我先把浏览器相关面试题做一份梳理吧。



...]]></description><category></category></item><item><title><![CDATA[（一）不只是 huohuo 的 HTML 面试题]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/118108924</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/118108924</guid><author>huohuoit</author><pubDate>Tue, 22 Jun 2021 21:12:26 +0800</pubDate><description><![CDATA[这里我应该是有一些话想说的，可能一刹那的特殊情感未到，没想好到底要说哪些话，先占个坑~~~



HTML部分并不是前端面试中的重点，在组件化流行的开发背景下，其中丰富的标签也似乎难以出现在我们手底敲打的代码中。似渐行渐远，也似自己还未触及到哪个壁垒，这里还是想在自己回顾的同时好好探究一番遇到的相关问题。同时，也是为了知识体系的完整性，就先从此篇开始。好吧，其实也因为我有点整洁完整强迫症哈哈哈~~~


VScode 永远的神！

也许我们习惯了脚手架，习惯了 template，但我们仍然不能忘了HTM..]]></description><category></category></item><item><title><![CDATA[JS-leetcode刷题-链表篇]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/116244586</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/116244586</guid><author>huohuoit</author><pubDate>Wed, 28 Apr 2021 22:58:13 +0800</pubDate><description><![CDATA[二、链表篇

leetcode-21--合并两个有序链表


Question：将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。(l1和l2均按非递减顺序排列)

示例：

输入：l1 = [1,2,4], l2 = [1,3,4]
输出：[1,1,2,3,5,4]


Method 1：递归

思路：已知两个升序的链表

递归建模：

l1[0]+merge(l1[1:],l2)，l1[0]&lt;l2[0]
	l2[0]+merg...]]></description><category></category></item><item><title><![CDATA[Vue 之虚拟 DOM 及 Diff 算法详解]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/115520780</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/115520780</guid><author>huohuoit</author><pubDate>Thu, 08 Apr 2021 19:44:02 +0800</pubDate><description><![CDATA[Virtual DOM

1、背景信息总结

DOM 操作非常耗时耗性能（且现代前端框架要求不手动操作 DOM，可以大大提高开发效率）---- 因为会引起页面的回流或重绘
	JS 的执行很快（浏览器V8引擎的出现更加加快了JS的计算速度）
	实现更好的跨平台（如浏览器端渲染、 Node.js 实现 SSR 服务端渲染、安卓/IOS、小程序等）

推出 ==&gt;Virtual DOM（虚拟DOM）


将真实 DOM 抽象成一个以 JS 对象为节点的虚拟 DOM 树，DOM 的变化过程中不需要操作真实D.]]></description><category></category></item><item><title><![CDATA[JS-leetcode刷题-数组篇]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/115350997</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/115350997</guid><author>huohuoit</author><pubDate>Wed, 31 Mar 2021 17:51:00 +0800</pubDate><description><![CDATA[Waiting to add...


一、数组篇

leetcode-88--合并两个有序数组


Question：给你两个有序整数数组nums1（m个元素） 和nums2（n个元素），请你将nums2合并到nums1中，使num1成为一个有序数组。（假设nums1的空间大小等于m + n）

示例：


输入：nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3
输出：[1,2,2,3,5,6]


Method1:直接合...]]></description><category></category></item><item><title><![CDATA[最最最到胃的发布NPM包讲解（以Vue组件库为例）]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/114332751</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/114332751</guid><author>huohuoit</author><pubDate>Tue, 16 Mar 2021 21:14:13 +0800</pubDate><description><![CDATA[第一问题抛出：项目中对于模块的导出（export 和 export deafult）和引入（import { } from 和 import from）出现的一些异同，如何正确认识和使用它们？


一、export 和 export deafult

前面的文章有过总结，再来回顾一下：


...]]></description><category></category></item><item><title><![CDATA[2021前端精选文章总结]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/113527608</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/113527608</guid><author>huohuoit</author><pubDate>Mon, 01 Feb 2021 21:50:21 +0800</pubDate><description><![CDATA[半年没有怎么在优快云写新文章了，有很多话想讲在开头，但是想先放一放，我已经迫不及待想随着自己的面试复习计划更新自己认真看过的精彩文章了！！！接下来我会常常更新这篇博客记录的文章，作为自己深入复习和制作思维导图基础记录。加油吧，小伙子！

（打基础都可以看看，但是我更推荐想深入理解的小伙伴看，此行的目的主要还是偏向理解原理啊。可能目前有点乱，但请谅解，没有太多时间来美化，我真的迫不及待把设定好的复习框架搞定了！让我开始吧！）

这里我先记录一些暂未未整理优秀的博主和文章

花神：https://juejin]]></description><category></category></item><item><title><![CDATA[less 相关的总结]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/108132015</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/108132015</guid><author>huohuoit</author><pubDate>Thu, 24 Sep 2020 16:28:06 +0800</pubDate><description><![CDATA[一、简述 less 的作用

是一门CSS预处理，扩充了CSS，增加了诸如变量、混合（mixin）、函数等功能，让 CSS 更易维护、方便制作主题、扩充，Less 也可以运行在 Node 或浏览器端。


]]></description><category></category></item><item><title><![CDATA[Echarts学习笔记]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/108741268</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/108741268</guid><author>huohuoit</author><pubDate>Wed, 23 Sep 2020 20:43:51 +0800</pubDate><description><![CDATA[一、基本概念

1、echarts 实例

每个 echarts 实例独占一个 DOM 节点（作为 echarts 的渲染容器）。

2、系列（series）

系列（series）：一组数值以及他们映射成的图。

一个系列包含的要素至少有：一组数值、图表类型（series.type）、以及其他的关于这些数据如何映射成图的参数。

系列类型（图表类型）（series.type）至少有：line（折线图）、bar（柱状图）、pie（饼图）、scatter（散点图）、graph（关系图）、tree（树图）、..]]></description><category></category></item><item><title><![CDATA[开发问题随笔]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/108217735</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/108217735</guid><author>huohuoit</author><pubDate>Tue, 22 Sep 2020 20:39:09 +0800</pubDate><description><![CDATA[1、不允许子组件直接改变父组件的数据，但是往往项目需求需要改变父组件的数据，那我们如何变通呢？

如果不想影响父组件的值，我们也可以用JSON颠倒转换的方式，在mounted方法中进行深拷贝，在data中初始化数据时用另一个变量作为承载，这样才承载变量改变，就不会影响父组件该变量的值了。
...]]></description><category></category></item><item><title><![CDATA[项目问题----页面滚动条问题]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/108206317</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/108206317</guid><author>huohuoit</author><pubDate>Mon, 24 Aug 2020 20:34:30 +0800</pubDate><description><![CDATA[这是我在制作一个内容超出页面可视区的设置界面时，滚动条处遇到的一个问题。经导师指导后分析拓展总结了如下几个问题

先来看看我的问题：在最右边滚动条滚动的时候，不希望滚动条滚动到页面主体内容上边（十分影响美观），也就是头部设置这个div部分



1、页面布局问题

首先我的理解是，页面出现滚动条是与页面的内容高度是有关的，滚动条应该在页面主体内容内出现，而不是在头部类似导航栏这种位置出现。应该注意到：滚动条的滚动长度 = 页面内容的 height: 100%。

犯错：我在做初始页面布局的时候，给头部设置这]]></description><category></category></item><item><title><![CDATA[canvas初识笔记]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/108197206</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/108197206</guid><author>huohuoit</author><pubDate>Mon, 24 Aug 2020 19:28:02 +0800</pubDate><description><![CDATA[一、基本用法

1、&lt;canvas&gt;元素

（1）元素类比：&lt;img&gt; ，唯一的不同就是它并没有 src 和 alt 属性

（2）只有两个属性：width height (初始默认 300px * 150px)

（3）注意：如果你绘制出来的图像是扭曲的, 尝试用width和height属性为&lt;canvas&gt;明确规定宽高，而不是使用CSS。

（4）其他：给每个标签都加上一个id属性是个好主意，因为这样你就能在我们的脚本中很容易的找到它。当开始时没有为canvas规..]]></description><category></category></item><item><title><![CDATA[Vue电商项目中遇到的一些问题]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/107670239</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/107670239</guid><author>huohuoit</author><pubDate>Wed, 29 Jul 2020 22:09:57 +0800</pubDate><description><![CDATA[1、为什么vue组件有的写成export default，有什么用？

声明一个vue，相当于 new Vue({})
	达到可复用的目的，也就是说，export default 相当于导出当前vue组件，在其它引入当前组件时可以使用当前组件中的方法和变量。
2、export和 exportdefault的区别

export可以导出多个命名模块，引入时（都用import）用大括号括起来
	exportdefault只能导出一个默认模块，这个模块可匿名，引入的时候可以给这个模块取任意名字，且...]]></description><category></category></item><item><title><![CDATA[JS算法--递归算法]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/107592794</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/107592794</guid><author>huohuoit</author><pubDate>Sun, 26 Jul 2020 13:58:33 +0800</pubDate><description><![CDATA[循环（loop），指的是在满足条件的情况下，重复执行同一段代码。比如，while语句。
	
[循环则技能对应集合，列表，数组等，也能对执行代码进行操作。]　　　　　　　　　　　　　　　　　　　　　　


	迭代（iterate），指的是按照某种顺序逐个访问列表中的每一项。比如，for语句。
	
[迭代只能对应集合，列表，数组等。不能对执行代码进行迭代。]　　　　　　　　　　　　　　　　


	遍历（traversal），指的是按照一定的规则访问树形结构中的每个节点，而且每个节点都只访问一次。
	
[...]]></description><category></category></item><item><title><![CDATA[Javascript数据结构与算法--读后总结（2）数组]]></title><link>https://blog.youkuaiyun.com/huohuoit/article/details/107587416</link><guid>https://blog.youkuaiyun.com/huohuoit/article/details/107587416</guid><author>huohuoit</author><pubDate>Sun, 26 Jul 2020 01:07:48 +0800</pubDate><description><![CDATA[1、访问元素

要访问数组里特定位置的元素，可以用中括号传递数值位置，得到想知道的值或者赋新的值。 

假如我们想输出数组arr里的所有元素，可以通过循环遍历数组，打印元素，如下所示： 




    for (var i = 0; i &lt; arr.length; i++) {
        console.log(arr[i]);
    }


例子：求斐波那契数列的前20个数字。已知斐波那契数列中第一个数字是1， 第二个是2，从第三项开始，每一项都等于前两项之和：

斐波那契数列为：1...]]></description><category></category></item></channel></rss>