- 博客(38)
- 收藏
- 关注
原创 [JS面试] ES6新特性 & js判断数据类型的方式
ES6 中提出了许多新特性,比如 let / const关键字、模板字符串、解构赋值、扩展运算符、箭头函数、for…of循环、Set、Promise等;像我比较常用的有模板字符串、let / const 关键字声明变量和常量、箭头函数、Promise对象和新增的一些方法,比如字符串中的startsWith、padStart、padEnd,数组中的find方法查找元素、enties()方法和for…of循环结合遍历数组,Number中的 isNaN方法、对象中的Object.assign()方法用来深拷贝对
2022-12-04 21:50:29
1967
1
原创 [Vue面试] keep-alive 和 $set 的使用
keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。和 transition 相似,keep-alive 是一个抽象组件:它自身不会渲染成一个 DOM 元素,也不会出现在父组件链中。在组件切换过程中将状态保留在内存中,防止重复渲染DOM,减少加载时间及性能消耗,提升用户体验在 created 函数调用时将需要缓存的 VNode 节点(虚拟DOM,其实就是一个JS对象)保存在 this.cache 中/在 render(页面渲染) 时,如果 VNode 的
2022-12-03 11:56:19
1620
1
原创 [面试题]computed和watch有什么区别?
deep 为深度监听,用来发现对象内部值的变化,因为watch只会监听数据的值是否改变,不会监听地址的变化,如果需要监听引用类型的数据变化,需要开启深度监听;immediate 表示在watch中首次绑定的时候,是否执行handler。watch 中有两个参数 deep 和 immediate;
2022-12-02 17:11:51
1281
原创 一篇文章弄懂BFC
`BFC(Block Formatting Context)`,即块级格式化上下文,它是页面中的一块渲染区域,并且有一套属于自己的渲染规则(前三条规则仅针对于非BFC元素)- 内部的盒子会在垂直方向上一个接一个的放置;- 对于同一个BFC下的两个上下相邻盒子的上下外边距 (margin) 会发生重叠;- 每个元素的左外边距与包含块的左边界相接触(即BFC中子元素不会超出他的包含块),即使浮动元素也是如此;- BFC的区域不会与浮动的元素区域重叠;- 计算BFC的高度时,浮动子元素也参与计算
2022-11-28 12:18:39
1008
1
原创 uniapp部分面试题汇总
uni-app是一个使用Vue.js开发所有前端应用的框架,开发者编写一套代码,可以发布到IOS、Android、Web(响应式)、以及各种小程序、快应用等多个平台。),但 uniapp 为了实现跨端兼容,需要注意网络请求跨域问题,微信小程序不用考虑多端兼容,也不会出现跨域问题。Vue的语法,微信小程序的api,对于前端开发人员来说更容易上手。uniapp真正做到一套代码多端发行,支持原生代码混写和原生sdk集成。组件、api与微信小程序一致,兼容 Weex 原生渲染。条件编译是利用注释实现的,
2022-11-27 15:53:34
6555
原创 对WebSocket的简单理解
详细介绍 👉WebSocket 是一种网络传输协议,可在单个TCP连接上进行,能更好的节省服务器资源和带宽并达到实时通迅。客户端和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。从上图可见,websocket服务器与客户端通过握手连接,连接成功后,两者都能主动的向对方发送或接受数据而在websocket出现之前,开发实时web应用的方式为不停地向服务器发送 HTTP 请求,问有没有数据,有数据的话服务器就用响应报文回应。
2022-11-27 15:13:40
606
原创 微信小程序部分面试题汇总
小程序中使用bind关键字绑定事件,但小程序中不能在绑定事件的同时为事件处理函数传递参数,可以为组件提供 data-* 自定义属性传参,其中 * 代表的是参数的名字。 事件传参 ="< button bindtap = " tapTap " data-param = " {{ " 事件传参"}}" > 事件传参 "
2022-11-26 22:26:20
11173
3
原创 Vue部分面试题汇总
跨域即受同源策略影响,两个页面资源之间的“协议+域名+端口”三者之中有任何一项不同即为跨域。(同源策略会阻止一个域的JavaScript脚本和另一个域的内容进行交互,是用于隔离潜在恶意文件的关键安全机制。)后台直接不做限制,放开所有请求。优点:方便;缺点:显而易见的不安全;JSONP基本原理:利用script标签的 src 不受同源策略限制,需要后端配合,已经不常用了配置代理:Proxyproxy : {//👇 代理的名称,一般以这种格式命名,当然你也可以随便起 '/xxx-api' : {
2022-11-23 21:40:12
498
原创 JavaScript & ES6 部分面试题汇总
js数据类型有哪些内置对象有哪些数组方法有哪些数组去重几种方式数组深拷贝几种方式对象深拷贝几种方式定时器有几种,有什么区别对Promise的理解对模块导入导出的理解箭头函数和普通函数的区别Js实现约瑟夫环问题(m个人留1个或者留n-1个)数组排序的几种写法
2022-11-20 21:57:09
1573
原创 H5C3部分面试题汇总
块状元素:hn、p、div、ul、ol、dl、li、dd、dt、table、thead、tbody、caption、tr、form、header、footer、section、nav、article、aside。link 与 visit 的位置是任意的,是因为 link 指的是元素被访问前的样式,而 visited 则指的是访问后的。行内元素:span、a、b、strong、i、em、u、ins、s、del。标签元素可以分成三大类:块状元素、行内元素、行内块元素,:添加浮动后的子元素撑不开父元素的高度;
2022-11-20 16:22:52
766
原创 函数的防抖和节流简述
节流相对于防抖而言实现起来更加简单,根据自己的喜好来选择使用哪个就好啦。的方式在一定的时间间隔内,将多次触发变成一次触发。比如用户在十秒内一直连续点击,但最后只会触发一次。如果用户在十秒内一直连续点击,则会触发两次。的触发频率,比如5秒内。
2022-11-15 21:50:24
268
原创 【ESLint语法检测】Parsing error: Cannot find module ‘@babel/eslint-parser‘的解决方式
属性,声明了这个属性之后script标签会支持一些新语法,即该属性是单文件组件 (SFC) 中使用组合式 API 的编译时语法糖,详情见官方文档。但是我随便更改一个字符,自动保存后它自动编译,就又报这个错误,难道我每次运行都要重新按一遍这个 @babel/eslint-parser 吗?有了这个文件之后,defineProps 是不报错了,但每次运行都提示我。文件 (如果根目录下没有这个文件的话),完事儿再一运行,好了,看起来没问题。经过百般排查,发现是上面的。,而这个js文件里面的。
2022-11-04 15:09:57
11635
3
原创 微信小程序中的App、Page、Component的生命周期函数
字面意义上说,生命周期就是指一个对象自身的生老病死;在程序运行上也可以这么理解,程序也是对象,也有“生老病死”;程序自身从创建到销毁的过程中,运行到特定的阶段,会触发特定的函数,这些函数,我们就称之为生命周期函数。
2022-10-25 20:04:50
4569
原创 微信小程序的默认目录结构&微信小程序中封装request请求
pages:wxml: 编写小程序界面结构的地方wxss: 编写小程序样式的地方json:编写界面配置的地方js:编写界面逻辑的地方utils: 编写工具类的地方app.js:创建程序实例的位置app.json: 编写全局配置地方app.wxss: 编写全局样式的地方project.config.json: 项目的配置文件sitemap.json:配置哪些网站可以被检索到。
2022-10-20 22:33:46
482
原创 【Vue基础】什么是跨域?如何解决跨域问题?浅浅了解一下什么是登录鉴权
登录鉴权即验证用户是否拥有访问系统的权利。有这么几种方式:什么是token?Token的引入:Token是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,在这样的背景下,Token便应运而生。Token的定义:Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码。
2022-10-04 06:30:00
748
原创 【Vue基础】Vuex全局管理的基本代码结构及其使用
Getter用于对 store 中的数据进行加工处理后形成新的数据,类似 Vue 中的计算属性。①Vuex中应该通过mutation变更state中的数据,而不是直接操作state中的数据。②通过 mapGetters 函数将需要的 getter 映射为当前组件的。②通过 mapState 函数,将当前组件需要的全局数据映射为当前组件的。②通过这种方式虽然操作起来繁琐一些,但是可以集中监控所有数据的变化。所有共享的数据都要统一放在Store的 state 中进行存储;
2022-10-03 21:32:06
491
原创 【Vue基础】VueCLI创建和启动项目&VueCLI生成的项目结构&Vue双向数据绑定的原理
输入指令:cd test进入新建的项目目录 ( 因为我起的文件夹名字是test,换成你起的即可 )进入项目目录后,输入指令:运行项目,等待它自动跑完即可(其实就是看上面的最后两句提示,也不一定是run serve,它提示什么就写什么即可)
2022-10-03 18:00:00
563
原创 【Vue基础】Vue基础自测45题
①Vue是一套构建用户界面的渐进式框架;与其他重量级框架不同的是,Vue 采用**自底向上增量开发**的设计。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。②核心理念组件化开发、数据驱动视图( 双向数据绑定 )MVC是前后端未分离时的分层开发概念,MVVM是前后端分离后的前端开发的概念;细说就是( 以下为个人理解,或有谬误,欢迎指正 ):MVC和MVVM中的Model层都用于数据操作,但是二者有本质区别,MVC中的Model是真正的服务端数据库,
2022-10-03 12:29:54
3139
原创 【Vue】Vue基础自用笔记&Day05_①Vue路由②计算属性和监视属性③ref标签属性
一个路由 ( route ) 就是一组映射关系( key - value ),分为后端路由和前端路由。多个路由 ( routes ) 需要经过路由器( router )的处理。后端路由:对于普通的网站,所有的超链接都是URL地址,所有的URL地址都对应服务器上对应的资源,它的 key 是URL地址,value 是一个函数( function ),用于处理客户端提交的请求。后端路由的工作过程:服务器接收到一个请求时,根据请求路径,找到匹配的函数来处理请求,返回响应数据。前端路由:对于 单页面应用程序 来说,主
2022-09-24 16:06:21
339
原创 【Vue】Vue基础自用笔记&Day04_①Vue组件②Vue插槽
什么是组件: 组件的出现,就是为了拆分Vue实例的代码量的,能够让我们以不同的组件,来划分不同的功能模块,将来我们需要什么样的功能,就可以去调用对应的组件即可。一个优秀的组件 / 模块应该做到:高内聚,低耦合耦合性:每个模块之间相互联系的紧密程度,模块之间联系越紧密,则耦合性越高,模块的独立性就越差内聚性:一个模块中各个元素之间的联系的紧密程度,如果各个元素(语句、程序段)之间的联系程度越高,则内聚性越高,即‘高内聚’如一个项目中有15个模块,需要在另一个项目中调用其中的一个模块,但是必须把全部的15个模
2022-09-22 20:27:42
450
原创 【Vue】Vue基础自用笔记&Day03_①Vue生命周期②Vue网络请求③Vue动画
beforeCreate生命周期钩子函数:初始化尚未完成,data数据,methods方法都未挂在在vue实例上一般用于created生命周期钩子函数:初始化已经完成,data数据,methods方法都可以被调用了, 一般用于接口请求+数据初始化beforeMount生命周期钩子函数:进入运行阶段前;
2022-09-21 22:56:43
174
原创 【JS基础数组方法】数组过滤、切割、查询
howmany参数为可选参数,设置删除的元素的总长度,如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。some() 是只要有一个元素满足筛选条件就返回 true,every()是所有元素都满足筛选条件才返回 true。返回值:如果删除一个元素,则返回一个元素的数组。如果未删除任何元素,则返回空数组。可以在某一个索引删除一个元素,然后在此处添加新元素,就达成了替换元素的效果。index参数为必需参数,设置从何处开始插入或删除,值为数组的索引。第三个参数为可选参数,为要添加到数组的新元素。
2022-09-21 11:22:05
928
原创 【Vue】Vue基础自用笔记&Day02_①Vue过滤器②按键修饰符③自定义指令
可以全局定义,也可以局部定义,全局定义使用这个方法:Vue.directive()自定义指令不能使用驼峰命名,因为HTML大小写不敏感!渲染页面时DOM的自定义属性会都变成小写,就找不到自己定义的自定义指令了!可以使用横杠'-'进行连接,定义时不加v-,使用时加v-。// 注册一个全局自定义指令 `v-focus` Vue . directive('focus' , {// 只调用一次,指令第一次绑定到元素时调用。在这里可以进行一次性的初始化设置。
2022-09-20 20:31:10
180
原创 【Vue】Vue基础自用笔记&Day01_①MVC和MVVM②Vue的代码结构③Vue的基础语法
Vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。Vue.js 是前端的主流框架之一,和Angular.js、React.js 一起,并成为前端三大主流框架!
2022-09-19 22:31:08
234
原创 [JS & jQuery项目]仿网易云音乐项目问题摘要
原因:滚动条已经达到最大值,无法再向下滚动。解决方法:我选择给最后一句歌词加一个底部外边距,因为如果给整个盒子加内边距的话还要改判断歌词的计算方法。}或许也会引发新的BUG,有待发掘。
2022-09-17 20:25:52
386
原创 [Web前端基础] CSS优先级、JS运算优先级、CSS设置在第几行进行超出部分省略号、JS设置元素样式的六种方式
important> 行内样式 > id选择器 > 类选择器 > 标签选择器 > 通配符选择器 > 继承。
2022-09-12 19:02:41
591
原创 CSS3浏览器私有前缀 && 新增的属性选择器
谈谈你对BFC的理解?我们在页面布局的时候,经常出现以下情况:这个元素高度怎么没了?这两栏布局怎么没法自适应?这两个元素的间距怎么有点奇怪的样子?…原因是元素之间相互的影响,导致了意料之外的情况,这里就涉及到了 BFC 概念内部的盒子会在垂直方向上一个接一个的放置对于同一个BFC的两个相邻的盒子的margin会发生重叠,与方向无关。每个元素的左外边距与包含块的左边界相接触(从左到右),即使浮动元素也是如此BFC的区域不会与float的元素区域重叠。
2022-09-10 16:51:50
354
原创 GET和POST的区别、Promise的两个方法及POST请求常见的参数类型
FireFox的POST请求就只发送一个TCP数据包。到底发多少个tcp包,和GET在浏览器回退时是无害的,而POST会再次提交请求。GET产生的URL地址可以被Bookmark,而POST不可以。GET请求会被浏览器主动cache,而POST不会,除非手动设置。GET请求只能进行url编码,而POST支持多种编码方式。GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。GET请求在URL中传送的参数是有长度限制的,而POST没有。
2022-09-08 20:22:15
888
原创 HTTP请求的8种请求方式以及常见的HTTP状态码总结
当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含 HTTP 状态码的信息头(server header)用以响应浏览器的请求。HTTP 状态码的英文为。HTTP Status Code 和后端返回的 Code 是不同的,例如 Http状态码返回200,表示请求成功;但是后端的 Code 却返回500,在HTTP状态码中,500代表服务器内部错误,但是在后端自己的Code设定中可能不是这样,一般代表着前端传参有错误。
2022-09-05 09:12:59
3117
原创 [JavaScript] async/await面试题 及其解析
定时器函数在异步操作中的优先级最低;深入理解 async/await 关键字,以及 await 的原理;剖析面试题;
2022-09-03 12:04:48
693
原创 JavaScript常见的异步操作及回调地狱问题的解决历程
ES6 新引入了 Generator 函数,可以通过 yield 关键字,把函数的执行流挂起,为改变执行流程提供了可能,从而为异步编程提供了解决方案。正常情况下,await 命令后面是一个 Promise 对象,它也可以跟其他值,如字符串,布尔值,数值以及普通函数。resolve函数为操作成功后的回调函数,reject函数为操作失败后的回调函数。,等到触发的异步操作完成后,恢复 async 函数的执行并返回解析值。
2022-09-02 21:43:06
659
原创 JavaScript [数组去重] 的部分方法总结
先判断传入的参数是不是数组,不是数组则直接结束,是数组则新建一个空的结果数组,然后for 循环原数组,在循环中判断结果数组是否存在当前元素,如果存在则跳过当前元素,不存在则将元素push进结果数组,最后返回结果数组。filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。这种数组去重的方法有问题,不建议用,有待改进,两个true、NaN等直接无了。双层循环,外层循环元素,内层循环时比较值。不考虑兼容性,这种去重的方法代码最少。方法 是用来检测属性是否为对象的自有属性,.
2022-08-30 21:59:05
198
原创 [自用] HTML基础知识笔记(暂不涉及CSS)
注意!!!!本文目的只有两个:①巩固自身的学识 ②方便好兄弟随时查看学习资源来自:B站黑马程序员pink老师文章目录标题标签段落标签与换行标签文本格式化标签div标签和span标签图像标签标题标签<h1>-<h6>双标签,共有六个重要性等级(1 - 6)标签作用为放大字号并加粗,但是其效果会随重要性递减。实例: <h1>俺是一级标题</h1> <h2>俺是二级标题</h2> <h3
2021-01-23 15:58:43
447
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人