- 博客(97)
- 资源 (3)
- 收藏
- 关注
原创 辽宁省博物馆十大镇馆之宝
故宫——石鼓湖北——云梦睡虎地秦简河南——云纹铜禁陕西——《阙楼仪仗图》辽宁——《万岁通天贴》湖南——皿方罍上海——大克鼎浙江——玉琮南京——大报恩寺琉璃塔拱门
2023-11-11 11:00:00
2933
原创 vue3(就业)
面试题:谈谈你对vite的理解,最好对比webpack说明webpack 原理图vite 原理图面试题答案:webpack会先打包,然后启动开发服务器,请求服务器时直接给予打包结果。而vite是直接启动开发服务器,请求哪个模块再对该模块进行实时编译。由于现代浏览器本身就支持ES Module,会自动向依赖的Module发出请求。vite充分利用这一点,将开发环境下的模块文件,就作为浏览器要执行的文件,而不是像webpack那样进行打包合并。
2022-11-10 17:04:42
603
原创 《优 化》
随着各种各样网站的出现,这些勤劳的“蜘蛛”每天在互联网上爬行,从一个链接到另一个链接,下载其中的内容,进行分析提炼,找到其中的关键词,如果“蜘蛛”认为关键词在数据库中没有而对用户是有用的便存入后台的数据库中。应该将重要内容的 HTML 代码放在最前面,最前面的内容被认为是最重要的,优先让“蜘蛛”读取,进行内容关键词抓取。可以合并多数背景图片和小图标,方便在任何位置使用,这样不同位置的请求只需要调用一个图片,从而减少对服务器的请求次数, 降低服务器压力,同时提高了页面的加载速度,节约服务器的流量。
2022-11-01 22:00:00
499
原创 vue相关原理
v-model 会忽略所有表单元素的 value、checked、selected 特性的初始值而总是将 Vue 实例的数据作为数据来源。触发响应式,监听data的getter和setter,初次渲染并不会触发setter,但是如果模板中使用data中的数据。绑定的数组头部push数据,那么整个dom将全部刷新一遍(如果数组每项内容都不一样)vue响应式指的是:组件的data发生变化,立刻触发试图的更新。hash变化触发网页的跳转,即浏览器的前进和后退。的标签,如果没有key标识,那么相当于每次。
2022-11-01 10:00:00
292
原创 vue框架使用相关面试题
vue组件中data值不能为对象,因为对象是引用类型,组件可能会被多个实例同时引用。如果data值为对象,将导致多个实例共享一个对象,其中一个组件改变data属性值,其它实例也会受到影响data是一个函数的话,这样每复用一次组件,就会返回一份新的data,类似于给每个组件实例创建一个私有的数据空间,让各个组件实例维护各自的数据。而单纯的写成对象形式,就使得所有组件实例共用了一份data,就会造成一个变了全都会变的结果。所以说vue组件的data必须是函数。
2022-10-31 10:00:00
366
原创 继承-安全-设计模式
CSRF全称为跨站请求伪造(Cross-site request forgery) 攻击者盗用了你的身份信息,以你的名义发送恶意请求, 对服务器来说这个请求是你发起的,却完成了攻击者所期望的一个操作XSS又叫CSS(Cross Site Script),跨站脚本攻击:攻击者在目标网站植入恶意脚本(js / html),用户在浏览器上运行时可以获取用户敏感信息(cookie / session)、修改web页面以欺骗用户、与其他漏洞相结合形成蠕虫等。
2022-10-30 10:00:00
555
原创 《异 步》
函数执行结束立刻有返回值,函数后面的代码需要等待函数有返回值之后才能执行:函数执行结束需要等待某个条件满足之后才有返回值,函数后面的代码无需等待函数有返回就能执行。
2022-10-29 10:00:00
542
原创 浏览器运行机制
这就是 AST 的生成过程,先分词,再解析。,那么后台的编译器 TurboFan(涡轮发动机) 就会把该段热点的字节码编译为高效的机器码,然后当再次执行这段被优化的代码时,只需要执行编译后的机器码就可以了,这样就大大提升了代码的执行效率。详细解释就是,启动一个程序的时候,操作系统会为该程序创建一块内存,用来存放代码、运行中的数据和一个执行任务的主线程,我们把这样的一个运行环境叫进程。:主要负责页面的网络资源加载,之前是作为一个模块运行在浏览器进程里面的,直至最近才独立出来,成为一个单独的进程。
2022-10-28 10:00:00
1436
原创 js执行机制
var myName = "王美丽";bar . setName("闷倒驴");this指向总结当函数被正常调用时,在严格模式下,this 值是 undefined,非严格模式下 this 指向的是全局对象 window;通过一个对象来调用其内部的一个方法,该方法的执行上下文中的 this 指向对象本身ES6 中的箭头函数并不会创建其自身的执行上下文,所以箭头函数中的 this 取决于它的外部函数new 关键字构建好了一个新对象,并且构造函数中的 this 其实就是新对象本身。
2022-10-25 10:00:00
671
原创 布局与事件
普通盒模型默认盒子属性:box-sizing: content-box;offsetWidth = (width + padding + border) 不算margin怪异盒模型设置语句:box-sizing: border-box;offsetWidth = width padding和border都挤压到内容里面。
2022-10-23 19:03:44
531
原创 前端工程师面试题库
它们的共同点:都是存储在浏览器本地的 它们的区别:cookie是由服务器端写入的,而SessionStorage、 LocalStorage都是由前端写入的,cookie的生命周期是由服务器端在写入的时候就设置好的,LocalStorage是写入就一直存在,除非手动清除,SessionStorage是页面关闭的时候就会自动清除。cookie的存储空间比较小大概4KB,SessionStorage、 LocalStorage存储空间比较大,大概5M。
2022-09-17 17:18:29
1302
原创 工程化分类面试题
但 scope hoisting 的启用是有前提的,如果遇到某些模块多次被其他模块引用,或者使用了动态导入的模块,或者是非 ESM 的模块,都不会有 scope hoisting。在一个模块中只能有一个默认导出。现有两个微前端工程,它们各自独立开发、测试、部署,但它们有一些相同的公共模块,并有一些自己的模块需要分享给其他工程使用,同时又要引入其他工程的模块。当执行某个命令时,如果无法从本地工程中找到对应命令,则会把命令对应的包下载到一个临时目录,下载完成后执行,临时目录中的命令会在适当的时候删除。.....
2022-08-14 09:00:00
401
原创 网络分类面试题
以上,就是cookie原理部分的内容。登录请求浏览器发送请求到服务器,附带账号密码服务器验证账号密码是否正确,如果不正确,响应错误,如果正确,在响应头中设置cookie,附带登录认证信息(至于登录认证信息是设么样的,如何设计,要考虑哪些问题,就是另一个话题了,可以百度 jwt)客户端收到cookie,浏览器自动记录下来后续请求浏览器发送请求到服务器,希望添加一个管理员,并将cookie自动附带到请求中。......
2022-08-13 09:00:00
804
原创 浏览器分类面试题
本文主要包含以下内容:整个页面可以看做是一幅画,这幅画是由浏览器绘制出来的,浏览器绘制这幅画的过程称之为渲染。渲染是一件复杂的工作,它大致分为以下几个过程:当元素的布局信息发生变化时,会导致回流。当元素的像素信息发生变化时,会导致重绘。回流一定会导致重绘,因为布局信息的变化一定会导致像素信息的变化。在实际开发中,获取和设置元素尺寸、位置均会导致回流和重绘,而仅设置元素的外观(比如背景颜色)则只会导致重绘,不会导致回流。回流是一项繁琐的工作,会降低效率,因此在开发中,应该尽量避免直接获取和设置元素的尺寸、位置
2022-08-12 09:00:00
435
原创 Javascript分类面试题
在 JavaScript 中,一共存在 3 种声明变量的方式:之所以有 3 种方式,这是由于历史原因造成的。最初声明变量的关键字就是 var,但是为了解决作用域的问题,所以后面新增了 let 和 const 的方式。首先我们来了解一下作用域。ES5 中的作用域有:全局作用域、函数作用域,ES6 中新增了块级作用域。块作用域由 { } 包括,if 语句和 for 语句里面的 { } 也属于块作用域。关于作用域的更多内容,可以参阅《作用域和作用域链》章节。上面代码中,在 Global Scope(全局作
2022-08-11 09:00:00
132
原创 CSS分类面试题
首先,在 CSS 中,单位分为两大类,绝对长度单位和相对长度单位。我们先来说这个,绝对长度单位最好理解,和我们现实生活中是一样的。在我们现实生活中,常见的长度单位有米(m)、厘米(cm)、毫米(mm),每一种单位的长度都是固定,比如 5cm,你走到任何地方 5cm 的长度都是一致的例如:在上面的代码中,我们设置了盒子的宽高都是 5cm,这里用的就是绝对长度单位。常见的绝对单位长度如下:这些值中的大多数在用于打印时比用于屏幕输出时更有用。例如,我们通常不会在屏幕上使用 cm。惟一一个经常使用的值,估计就是
2022-08-10 09:00:00
383
原创 HTML分类面试题
语义是指对一个词或者句子含义的正确解释。很多HTML标签也具有语义的意义,也就是说元素本身传达了关于标签所包含内容类型的一些信息。例如,当浏览器解析到标签时,它将该标签解释为包含这一块内容的最重要的标题。h1标签的语义就是用它来标识特定网页或部分最重要的标题。W3CW3C 指万维网联盟()W3C 创建于1994年10月W3C 由创建W3C 是一个会员组织W3C 的工作是对 web 进行标准化W3C 创建并维护WWW 标准W3C 标准被称为W3C 推荐(W3C 规范)...
2022-08-09 09:00:00
447
原创 vue面试题汇总
参考答案:bind: 只调用一次,指令第一次绑定到元素时调用,用这个钩子函数可以定义一个在绑定时执行一次的初始化动作。inserted: 被绑定元素插入父节点时调用(父节点存在即可调用,不必存在于 document 中)。update: 被绑定元素所在的模板更新时调用,而不论绑定值是否变化。通过比较更新前后的绑定值,可以忽略不必要的模板更新(详细的钩子函数参数见下)。componentUpdated: 被绑定元素所在模板完成一次更新周期时调用。...
2022-08-08 09:00:00
266
原创 工程化面试题汇总
工程化的出现,就是为了解决这一矛盾,它可以让我们舒服的在开发环境中书写代码,然后经过打包,生成最合适的生产环境代码,这样就解放了开发者的精力,让开发者把更多的注意力集中在开发环境上即可。在开发项目时,让项目依赖模块的主版本,因此,当模块更新时,只要不是主版本更新,项目都可以非常方便的升级模块版本,无须改动任何代码。组件化开发是一些前端框架带来的概念,它把一个网页,或者一个站点,甚至一个完整的产品线,划分为多个小的组件,组件是一个可以复用的单元,它包含了一个某个区域的完整功能。...
2022-08-07 09:00:00
234
原创 网络面试题汇总
在查询域名时,客户端会先检查自身的 DNS 映射表,若找不到解析记录,则使用用户配置的 DNS 服务器,若目标 DNS 服务器中找不到记录,则继续往上一个层级寻找,直到到达根域名服务器,根域名服务器会根据域名的类型,将解析任务分发到对应的子域名服务器依次查找,直到找到解析记录为止。公钥指的是公共的密钥,任何人都可以获得该密钥。攻击者利用站点的漏洞,在表单提交时,在表单内容中加入一些恶意脚本,当其他正常用户浏览页面,而页面中刚好出现攻击者的恶意脚本时,脚本被执行,从而使得页面遭到破坏,或者用户信息被窃取。..
2022-08-06 09:00:00
181
原创 浏览器面试题汇总
如果已经访问过 app 并且资源已经离线存储了,那么浏览器就会使用离线的资源加载页面,然后浏览器会对比新的 manifest 文件与旧的 manifest 文件,如果文件没有发生改变,就不做任何操作,如果文件改变了,那么就会重新下载文件中的资源并进行离线存储。主要原因是浏览器对同一个域下的 TCP 连接数是有限制的,这样就导致某个网页如果外部资源多了,比如图片很多的网页,在解析页面时,由于 TCP 连接数受限,就无法同时发起多个下载连接,无法充分利用带宽资源。比如IE中盒模型的宽高使用的是边框盒。...
2022-08-05 09:00:00
263
原创 就业核心指导
简历通过率是一个概率事件,即便简历做到完美,也不可能百分之百的通过在概率固定的情况下,想要增加面试机会,增加投递量是最简单有效的海投是指一次性对多家公司投递简历,一次投递的数量大约是50~100封。原则是保证每天都有面试邀请电话。如果面试电话太多,就减少投递量;否则,就增加投递量。很多招聘APP支持一键大量投递。海投的目的,是为了增加面试机会,从而收集到更多的面试题、锻炼面试心态和能力,是为了后面的定投做准备。把海投当做是打怪升级,公司就是你的练级场。...
2022-08-04 14:24:27
785
原创 前端总结题
A.弹性容器的justify-contentB.弹性容器的align-itemsC.弹性项目的justify-contentD.弹性项目的align-items。
2022-07-22 17:22:19
960
原创 项目的部署
当我们的项目开发完毕后,我们需要将项目打包、部署到服务器上,供用户来使用。目前,常见的部署方式有两种:这是最古老的部署方式,也是最常见的一种部署方式。我们前端只需要将我们的项目打包好,交给后端开发人员即可。后端开发人员会把我们打包好的项目放到后端的静态资源目录里面。随着前后端分离开发模式的流行,现在可以采用前后端分离部署的形式。后端部署后端服务器的代码,前端将打包好的资源,部署到前端的服务器上面,用户在做请求的时候,从前端服务器请求静态资源,然后从后端服务器获取数据。目前前端部署静态资源时,大多采用 Nod
2022-06-27 15:15:00
3321
原创 vue组件库实战
https://gitee.com/dev-edu/mysite-serverhttp://mock.duyiedu.com/我们使用的是 toast-uitoast-ui 的官网地址:https://ui.toast.com/该编辑器有 vue 版本:https://www.npmjs.com/package/@toast-ui/vue-editor
2022-06-24 16:30:00
170
原创 vue异步组件
在代码层面,组件本质上是一个配置对象但有的时候,要得到某个组件配置对象需要一个异步的加载过程,比如:如果一个组件需要通过异步的方式得到组件配置对象,该组件可以把它做成一个异步组件应用异步组件通常应用在路由懒加载中,以达到更好的分包为了提高用户体验,可以在组件配置对象加载完成之前给用户显示一些提示信息推荐使用NProgress展现一个进度条.........
2022-06-18 10:15:00
874
原创 打包结果分析
由于是利用进行打包,我们仅需加入一个插件即可分析打包结果为了避免在开发环境中启动,我们仅需使用以下代码即可优化公共库打包体积使用CDNCDN全称为Content Delivery Network,称之为内容分发网络它的基本原理是:架设多台服务器,这些服务器定期从源站拿取资源保存本地,到让不同地域的用户能够通过访问最近的服务器获得资源我们可以把项目中的所有静态资源都放到CDN上(收费),也可以利用现成免费的CDN获取公共库的资源首先,我们需要告诉不要对公共库进行打包然后,在页面中手动加入链接,这里使用
2022-06-17 09:30:00
559
原创 vuex经典案例
路由总体示意图鉴权守卫逻辑示意图watch配置Vue.prototype.$watchmapStategettersmapGettersmoduleswatchexact-path导航守卫
2022-06-16 12:15:00
205
原创 vue数据共享
在中遇到共享数据,会带来下面的多个问题:一种比较容易想到的方案,就是把所有的共享数据全部提升到根组件,然后通过属性不断下发,当某个组件需要修改数据时,又不断向上抛出事件,直到根组件完成对数据的修改。这种方案的缺陷也非常明显:基于上面的问题,我们可以简单的设置一个独立的数据仓库。组件需要什么共享数据,可以自由的从仓库中获取,需要什么拿什么。组件可以自由的改变仓库中的数据,仓库的数据变化后,会自动通知用到对应数据的组件更新要实现这一切,可以选择安装后,可以通过下面的代码创建一个数据仓库,在大部分情况下,一个工程
2022-06-15 10:30:00
947
原创 $listeners和v-model
针对节点的原生事件,支持多种修饰符以简化代码详见:事件修饰符、按键修饰符、系统修饰符是的一个实例属性,它用于获取父组件传过来的所有事件函数v-model指令实质是一个语法糖,它是属性和事件的结合体详见:表单输入绑定............
2022-06-14 13:06:31
204
Personal space
2022-08-01
Mongodb核心知识
2022-07-27
html+css+javascript
2022-05-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人