- 博客(11)
- 收藏
- 关注
原创 深入理解Vue 2.0原理
深入Vue原理 随着vue前端框架的广泛的运用在前端开发中,市场对vue前端开发工作者的要求也显著提高了,不仅要熟练使用vue进行日常业务的开发,同时又要熟悉并理解vue框架的底层原理,深入底层源码,这让前端开发工作者又将vue源码的理解加入了自己的学习清单中。所以,今天我在这里为大家分享自己研究vue原理的心路历程,避免踩坑。 新的改变 我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客: 全新的界面设计 ,将会带来
2021-06-04 22:38:32
1131
2
原创 深入理解js的事件循环机制(event Loop)
引言: 作为前端开发人员,JavaScript对于我们来说并不陌生,在日常开发中我们经常会遇到这样的情况,给定几行代码,需要知道其输出内容和顺序,我们可以直接在浏览器中运行,控制台查看运行结果,但如果是在面试求职中呢,我们显然不能打开电脑运行一下,所以理解JavaScript执行机制就显得尤为重要了。 1.关于javascript javascript是一门单线程语言,简而言之呢,就是按照语句出现的顺序执行的,在最新的HTML5中提到了web-worker,但JavaScript是单线程这一核心仍未改变,所
2021-03-03 10:45:31
815
1
原创 pdf 在线预览之 vue-pdf插件的使用
vue-pdf vue-pdf的安装封装组件 vue-pdf的安装 支持兼容到 IE11 npm install --save vue-pdf@4.2.0 封装组件 由于该组件在我开发的项目中使用的地方比较多,是一个通用型组件,所以这里对它进行封装; 注意:本项目使用的UI库是element UI pdfPreview.vue 代码如下: <!-- @anthor: mrdeng Lei, @description: pdf文件在线预览--本地开发预览在线文件会出现跨域问题,需要将浏览器配置
2021-02-18 17:33:34
1221
3
原创 使用webpack4.43.0+vue2.6.12手动搭建一个webpack项目
webpack4.43.0的基础配置&高级配置 说到搭建一个vue项目,对于一个初级工程师来说最简单也是最快的方法就是使用vue-cli脚手架来搭建,当然搭建项目对于一线前端初级开发工程师来说是接触不到的,这些工作前端leader都已经做好了,你只需要往里面写业务逻辑即可,看上去没啥毛病,但对于有追求,有上进心的你来说,你也想知道一个项目在破土动工前,前端leader是怎么搭建一个前端项目的工作流的,如何去手动配置一个具体项目的webpack打包文件,包括后期的SSR,服务端渲染。这些都是你提升自己
2021-02-14 10:40:29
1806
1
原创 链表的实现
链表是一个线性结构,同时也是一个天然的递归结构。链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。 链表的增删改查 <script> // 链的基本实现 // 此处声明的是node节点的构造函数 class Node { constructor(v, next) { this.value = v; this.next = next; } } // 链表
2021-01-11 22:43:01
324
原创 vue.js elementUI中的 el-talbe 内嵌el-input el-select无法编辑,视图不刷新(更新)
vue.js elementUI中的 el-talbe 内嵌el-input el-select无法编辑,视图不刷新(更新) 在开发中遇到一个关于element UI中el-table里的数据内嵌el-input 和el-select后无法编辑修改内容,视图无法刷新的问题。(实际上内容是更改了的) 引用:https://linzhji.blog.csdn.net/article/details/105333731 <Qtable :tableData="tableL
2021-01-10 22:43:58
1825
原创 前端常用算法----时间复杂度为O(nlogN)的排序算法
时间复杂度和空间复杂度 时间维度:是指执行当前算法所花费的时间,我们通常用「时间复杂度」来描述。 空间复杂度:是指执行当前算法需要占用多少内存空间,我们通常用「空间复杂度」来描述。 时间维度 O(n) for(var i = 0; i < n; i++) { // ..... } O(logN) while(i < n) { i = i * 2; // ... } O(n²) for(var i = 0; i < n; i++) {
2020-10-31 17:08:02
1177
原创 时间复杂度为O(n²)的排序算法--(冒泡排序,插入排序)
前端排序算法 冒泡排序 时间复杂度: O(n²) 空间复杂度: O(1) class SortArr { constructor(arr) { this.arr = arr; } sort() { let len = this.getLength() for (var i = 0; i < len; i++) { for (var j = 0; j < len - i; j++) {
2020-10-31 16:24:49
371
原创 前端常用算法---堆排序-最大堆的添加与删除
@前端常用算法—堆排序-最大堆的添加与删除 堆排序的实现流程 堆排序 时间复杂度: O(nlogN) 空间复杂度: O(n) 我们以面向对象的方式对堆排序进行分析与实现 // 最大堆的添加 删除 排序 function swap(arr, index1, index2) { var temp = arr[index1]; arr[index1] = arr[index2]; arr[index2] = temp; } class Heap { constructor()
2020-10-31 10:40:59
473
原创 (队列的实现与应用)——给定一个整数流和一个窗口的大小,根据滑动窗口的大小,计算其所有整数的移动平均值。
给定一个整数流和一个窗口的大小,根据滑动窗口的大小,计算其所有整数的移动平均值。 例如: MovingAverage m = new MovingAverage(3); m.next(1)=1; m.next(10)=(1+10)/2; m.next(3)=(1+10+3)/3 m.next(5)=(10+3+5)/3; 分析测试用例 窗口的大小固定 调用next添加数字并计算平均值 超过窗口的大小,最先添加的数字需要先移除(队列的特点:先进先出) 解题思路 使用队列来添加数字 通过
2020-09-06 22:27:35
602
2
原创 栈的应用——JS实现括号匹配问题
(堆栈的应用)JS实现括号匹配问题 1.首先要有一个运行js的编译环境,然后有个编辑器,本人使用的是VsCode,看个人喜好,能运行js代码就行。 2,栈遵循 “先进后出” 的原则(如果对栈不了解的可以自行百度,这里就不详细说明了)。 示例:给定一个只包括“{”,“}”,“(”“)”,“[" ,"]’'的字符串,判断字符串是否有效。有效字符串需要满足: 1,左括号必须用相同类型的右括号闭合 2,左括号必须以正确的顺序闭合(不得出现嵌套) 注意空字符串可被认为是有效的字符串; 示例
2020-09-06 00:16:08
1927
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅