- 博客(158)
- 收藏
- 关注

原创 前端自己平时总结
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-...
2019-02-24 23:06:42
1146
原创 前端开发2025遇到问题总结
在JavaScript中,方法用于并行执行多个Promise,并等待所有Promise都完成。然而,如果其中一个Promise被拒绝(即抛出错误),方法会立即拒绝,并返回第一个被拒绝的Promise的错误。这可能会导致后续的Promise无法正常执行。为了解决这个问题,我们需要对每个Promise进行处理,使其在成功时返回一个包含success和item的对象,在失败时返回一个包含success和error的对象。这样,即使其中一个Promise被拒绝,我们也可以在的then方法中正常处理结果。
2025-03-18 19:44:01
181
原创 前端web worker提升性能实战案例
Worker 是一种在后台运行的脚本,允许你在主线程之外执行复杂的任务,而不会阻塞用户界面。postMessage 是 Worker 和主线程之间通信的主要方式
2025-03-16 17:34:07
167
原创 页面js脚本的执行顺序归纳
js是单线程执行的,在页面加载时,会从上到下执行html中的js脚本,遇到async或defer属性的脚本会异步加载,加载完成后立即执行(async)或等待html解析完成后再执行(defer)。区别:在于执行时机 defer:defer会等待html解析完成后再执行(dom结构能通过js获取,但是不用等外部资源图片等加载完成在执行defter的脚本)1.script通过src引入外部文件直接阻塞html的解析,直到外部文件加载完成并执行完成,才会继续解析html。
2024-12-20 11:57:33
220
原创 面试题 体坛2022.3.24
1.浏览器输入url获取页面的过程 DNS查找讲讲 获取数据之后如何渲染页面的2.进程和线程是啥有啥不同3.vue双向绑定原理讲讲 涉及那些类
2022-03-24 17:54:32
805
原创 使用http-server开启一个本地服务器
平时需要模拟启动一个本地服务器 请求静态文件可以使用http-server插件前端常使用的http服务器http-server,非常实用。可以做模拟数据,可以做静态资源服务器,也可以做调试、测试的前端服务器,可以不再依赖后端。可可以做代理转发等功能,解决平时开发大部分后端需求。1.下载命令:npm install http-server -g2.http-server使用:1.http-server 默认启动一个服务 默认一个端口号2.http-server './www/..
2022-03-01 11:11:52
1442
原创 clean-webpack-plugin使用
为了在每次打包发布时自动清理掉 dist 目录中的旧文件,可以安装并配置 clean-webpack-plugin 插件运行如下的命令,即可在项目中安装 clean-webpack-plugin插件:npm install clean-webpack-plugin -Dwebpack3.X需要下载指定版本的插件:npm install --save-dev clean-webpack-plugin@3.0.0"clean-webpack-plugin": "^3.0.0"...
2022-02-28 19:24:22
2177
原创 研究vue-cli脚手架实现过程-自己写一个demo
vue脚手架的使用过程如下:常用的命令1、安装vue脚手架vue-cli 命令:npm install -g vue-cli 安装成功后可以用vue -V查看vue版本2、cd到对应的目录下初始化vue项目 命令:vue init webpack my-project Project name 项目名 Project description 项目名描述 Author 作者邮箱 Use ESLint to lint your c...
2022-02-12 09:54:13
998
原创 实现二叉搜索树的结构数据
//实现二叉搜索树:特点 左侧的值小于父节点 右侧的值大于父节点 //创建的节点 class Node { constructor(value) { this.right = null; this.left = null; this.value = value } } //存放节点 class Bst { constructor() { .
2022-01-24 23:03:13
558
原创 前端设计模式
// 实现单例设计模式 利用闭包 缓存实例对象 只产生一个实例let single=(function(){ let singleObj=null; function getInstance(){ if(!singleObj){ singleObj=new dialogObj(); } return singleObj } function dialogObj(){ ...
2022-01-23 23:29:22
225
原创 构造函数实现单例模式 观察者模式面试题
请实现EventEmitter, 让打印输出符合预期const eventBus = new EventEmitter()const eventBus1 = new EventEmitter()console.log(eventBus === eventBus1) // 打印输出: truefunction handleClick(param1, param2) {console.log(param1, param2)}eventBus.on('click', handleClick)...
2022-01-01 19:26:56
320
原创 vue提问知识点总结
1.objece.definePrototype怎么劫持数组的?为什么重写这些数组方法?重写数组方法,为了更友好的操作数组并触发响应式检测,Vue 重写了对数组引起副作用(改变原数组)的方法。2.Vue.$set方法背后原理:手动触发更新对象数据 让数据加上拦截方法...
2021-12-26 21:55:11
345
原创 vue中引入sass全局函数
sass或者less都提供变量设置,在需求切换主题的项目中使用less或者sass变量,只要修改变量值,编译后所有用到该变量的样式都会被修改为你想要的效果,但是在vue-cli搭建的项目中,在main.js中全局引入一个scss文件,在其中定义变量在其他组件或者页面中引用报变量未定义错误,其他的样式可以正常显示,显然是编译的问题。傻瓜式引用在每个用到全局变量的组件都引入该全局样式文件@import 'path/fileName.scss'但是组件或者页面不在统一层目录下,引入...
2021-11-10 13:03:47
644
原创 adb安装
Mac安装adb,最简单的办法是用homebrewhomebrew是macOS的一个包管理工具1、安装homebrewruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"2、安装adbbrew cask install android-platform-tools3、运行adbadb devices4.配置环境变量打开终端,入当前用户的home目录
2021-11-09 10:56:02
2646
原创 Vue3的优势
一、Vue 3.0 性能提升主要是通过哪几方面体现的?1、源码体积的优化重写了虚拟 dom2、响应式系统的升级用 Proxy 和 Reflect 来代替 vue2 中的 Object.definepeoperty()方法来重写响应式 vue3 中可以监听动态新增的属性 vue3 中可以监听删除的属性 vue3 中可以监听数组的索引和 length 属性3、代码编译优化使用了 组合 API 来代替 vue2 中的 Options API 组件内不需要根节点了,使用 fragment
2021-08-14 08:04:20
564
原创 自己写工具包发布到npm流程
把通用的功能开发成npm包,便用使用和维护,更重要的是可以分享给广大的开发者,是不是很激动人心!那么,步骤如下:1.创建项目创建项目目录,npm init ,根据需要输入配置信息(建完后也可以在package.json中自行修改)npm init控制台如图:生成一个package.json文件 如图:配置项name: 说明了npm包的名称,也就是publish后可以在npmjs中通过该名称搜索到version:版本号main:入口文件2.创建ind.
2021-07-28 19:42:16
365
原创 后台返回的数据有回车换行符号,前端也要进行相应的换行显示
解决方法:使用<pre>或<code>标签,它们会自动识别和处理后台返回的换行符号。此外,超出容器外的内容需要进行换行处理的话,可以使用样式:white-space:pre-wrap;
2021-07-05 18:55:41
1072
原创 vue3学习
下载脚手架:npm install -g @vue/clivue create 搭建新项目:vue create <Project Name> //文件名 不支持驼峰(含大写字母)
2021-07-04 22:17:29
315
1
原创 Vue中使用swiper插件实现轮播图
Vue中集成使用swiper插件实现轮播图 集成vue-awesome-swiper组件支持vue的写法:终端输入如下命令下载vue-awesome-swiper和swiper
2021-06-23 14:36:25
2466
原创 iOS 模拟器设置输入中文
在IOS 模拟器中 输入中文模拟器默认的配置种没有“小地球”,只能输入英文。加入中文方法如下:找到模拟器的Settings--->General-->Keyboard-->International KeyBoards-->Add New Keyboard-->Chinese Simplified(PinYin) 即我们一般用的简体中文拼音输入法,配置好后,再输入文字时,点击弹出键盘上的“小地球”就可以输入中文了。...
2021-04-02 15:29:55
1004
2
原创 vscode保存文档自动格式化配置
editor.formatOnSave上图片 一个图片胜过千言万语:在设置中搜索editor.formatOnSave之后勾线成对号就行了 每次保存文档都会自动格式化了
2021-03-28 16:20:43
1042
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人