mxydl2009
码龄10年
关注
提问 私信
  • 博客:100,555
    100,555
    总访问量
  • 90
    原创
  • 65,060
    排名
  • 74
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2014-10-19
博客简介:

mxydl2009的博客

查看详细资料
  • 原力等级
    当前等级
    1
    当前总分
    89
    当月
    0
个人成就
  • 获得132次点赞
  • 内容获得9次评论
  • 获得237次收藏
  • 代码片获得272次分享
创作历程
  • 10篇
    2024年
  • 5篇
    2021年
  • 34篇
    2020年
  • 33篇
    2019年
  • 8篇
    2018年
成就勋章
TA的专栏
  • 前端工程化# webpack
    3篇
  • react
    1篇
  • 前端工程化
    8篇
  • 打包工具
    3篇
  • 脚手架
    1篇
  • vue-router
    1篇
  • vue
    7篇
  • 代码托管
    1篇
  • 代码静态检查
    1篇
  • 浏览器相关
    4篇
  • typescript
    2篇
  • JavaScript语法
    4篇
  • 项目构建工具
    1篇
  • 构建系统
    1篇
  • electron配置
    1篇
  • JavaScript设计模式
    1篇
  • 前端技术问题
    20篇
  • 前端提问
    1篇
  • 后端开发php配置
    2篇
  • JS动画
    1篇
  • 后端配置
    2篇
  • MongoDB
    1篇
  • 微信小程序
    1篇
  • ES6语法
    4篇
  • 浏览器与JavaScript引擎原理
    5篇
  • JS常用技术
    9篇
  • CSS方法
    3篇
  • Python配置
    1篇
  • Django
    1篇
  • Django模板过滤器
    1篇
  • node.js
    4篇
兴趣领域 设置
  • 前端
    javascriptvue.jsreact.jses6webpack前端框架
  • 后端
    node.js
  • 学习和成长
    面试
创作活动更多

2024 博客之星年度评选报名已开启

博主的专属年度盛宴,一年仅有一次!MAC mini、大疆无人机、华为手表等精美奖品等你来拿!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

n个数字组成的字符串,移走k个字符,求剩下的字符组成的最小数字

这样转换意味着,每次操作的最优解,就是多次操作同时进行后的最优解(局部最优累积成为全局最优),需要对此进行证明,之后我们会使用严格的数学推导方式得出操作的规律,从而证明局部最优累积为全局最优;移走k个字符的情况,表达式中无非就是缺少了某些项,但跟移走1个字符的思路是一致的,规律是一致的,因此移走k个字符与移动k次,每次移走1个字符是等效的;移走k个字符,可以转换为移走1个字符,移k次,每一次都让剩下的字符组成的数字最小;给出n个数字组成的字符串,移走k个字符,求剩下的字符组成的最小数字;
原创
发布博客 2024.08.18 ·
484 阅读 ·
7 点赞 ·
0 评论 ·
9 收藏

理解Vue3的最长递增子序列算法

Vue3中使用了快速diff算法,有两个核心思想为了好理解,用返回最长递增子序列的算法来解释,而非原始的返回该子序列对应的在原数组中的索引值。
原创
发布博客 2024.08.18 ·
1094 阅读 ·
8 点赞 ·
0 评论 ·
22 收藏

避免CSRF攻击的方案

服务端下发用于CSRF token用于请求验证,客户端使用脚本进行请求时,携带该token进行验证,而恶意网站是无法获取到该token的值。这种方式要求token值一定要是随机生成。恶意网站发送对感兴趣网站的请求(或者正常网站发送恶意请求,但一般正常网站不可能这么做),显然,这肯定属于跨域请求了。使用表单让脚本自动提交的方式可以进行CSRF攻击。
原创
发布博客 2024.08.18 ·
586 阅读 ·
4 点赞 ·
0 评论 ·
8 收藏

如何判断给定值是否可以进行Proxy创建

对于immer.js v0.4.0版本,创建代理对象而言,目标对象仅限于Plain Object,因为immer.js要解决的问题就是plain object的数据更新问题,不解决原型链复杂的对象更新问题。在翻看immer.js的源码(v0.4.0)时,发现其中有一个方法用来判断给定值,是否可以创建代理对象,源码如下。, 最后交给ChatGPT来解释,gpt给的答案是源码写错了, 应该是判断。也是能创建出类似字面量对象那样的值,尝试如下代码。是能理解的,因为字面量的对象,原型就是。, 但是为什么要增加。
原创
发布博客 2024.08.18 ·
155 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

svelte框架浅析

介绍了svelte框架的响应式原理、prop的单向数据流例外情况、组件编译和运行时的机制
原创
发布博客 2024.08.18 ·
1014 阅读 ·
25 点赞 ·
0 评论 ·
17 收藏

Chrome端口限制导致ERR_UNSAFE_PORT

普通用户没有使用1024以下端口号的权限,例如如果要使用80端口号,则必须是root用户权限才行。
原创
发布博客 2024.08.18 ·
409 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

封装Vue组件的一般流程

babel维护自己的Monorepo而开源的项目,用于管理和发布项目到GitHub和npm优化使用git和npm管理多包仓库的工作流工具管理具有多个包的JavaScript项目一键提交代码到git和npm仓库选择使用npm还是yarn来管理,需要单独配置在jest.config.js中配置。
原创
发布博客 2024.08.18 ·
1509 阅读 ·
15 点赞 ·
0 评论 ·
29 收藏

fixed失效,sticky来拯救

当fixed固定定位由于堆叠上下文失效后,使用sticky来实现类似的效果
原创
发布博客 2024.08.18 ·
369 阅读 ·
5 点赞 ·
0 评论 ·
9 收藏

异步网络请求竞态问题

很多场景下都存在异步网络请求的竞态问题,对于此类竞态问题,JavaScript本身不容易解决,需要借助一定的外部库更容易,如RxJS
原创
发布博客 2024.08.18 ·
791 阅读 ·
14 点赞 ·
0 评论 ·
23 收藏

module federation模块联邦与微前端

module federation是一种支持当前应用在运行时加载其他运行时应用内部模块的技术,在webpack配置时,当前应用需要用remote指定要加载的应用名称, 其他应用使用exposes指定对外暴露的内部模块,使用shared指定公共的共享模块。应用可以各自独立构建,独立部署,只在运行时产生耦合(加载)。各个应用在开发构建时都是独立的,降低了开发构建时的耦合性。
原创
发布博客 2024.07.24 ·
1506 阅读 ·
29 点赞 ·
0 评论 ·
30 收藏

(二叉)树的遍历

树,包括图,在遍历时都存在两种方式:深度优先遍历和广度优先遍历。树,一定有一个根节点,而图,没有根节点,但图中的任意节点都可以作为根节点使用(当然该节点一定要有边,否则没有意义)深度优先遍历访问当前节点将当前节点的children作为子树的根节点递归访问使用递归的方式// 传入树的根节点,开始深度优先遍历function dfs(root) { // 访问节点数据 console.log(root.val); if (root.children.length > 0) {
原创
发布博客 2021.06.11 ·
272 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

JavaScript数组拍平(扁平化)

数组扁平化指的是将多维数组转换为一维数组,实现的思路包含以下几种:拼接+递归拼接指的是新建一个空数组作为结果数组,将原数组进行分析变换后拼接到新数组上,最终返回新数组。递归指的是由于不知道多维数组嵌套有多少层,所以对原数组采用递归的分析方式来解决。通用的方式function flatten(arr) { let result = []; // 遍历数组元素,查看元素是否为数组类型 for (let i = 0; i < arr.length; i ++) { if (A
原创
发布博客 2021.06.09 ·
513 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

浏览器使用video播放m3u8类的直播流媒体

关于m3u8文件格式描述m3u8 是一种基于 HTTP Live Streaming 视频流媒体格式。m3u8文件本身是一个纯文本文件,用于存放整个视频的基本信息和分片(Segment)组成。由 Apple.inc 率先提出的 HLS 协议在 Mac 的 Safari 上原生支持,浏览器目前可以通过<video src="./test.m3u8" type="application/x-mpegURL">来播放。生成使用ffmpeg工具对mp4格式的视频进行基于hls协议分割可以得到m
原创
发布博客 2021.03.09 ·
8935 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

Next.js基本使用

Next.js创建项目使用命令 npm init next-app [your app name]页面路由系统创建页面:页面:放置在pages文件夹中的React组件,需要被默认导出组件文件中不需要手动引入React页面的URL地址与文件地址一一对应页面跳转Link组件:默认使用JavaScript进行跳转,即SPA形式,如果禁用了JavaScript,则使用<a>进行跳转引入:import Link from 'next/link'
原创
发布博客 2021.03.04 ·
2483 阅读 ·
0 点赞 ·
1 评论 ·
1 收藏

简易的打包器--webpack打包原理

手写一个简单的类似webpack的打包器打包流程说明:定义依赖分析函数,通过读取文件内容,分析得到该文件导入的依赖项code => AST => 得到导入声明,记录导入声明中的依赖项路径 => AST->code => 返回记录当前文件filename、依赖项dependencies和转译后的code的对象定义分析依赖图列表的函数,传入项目的入口文件,递归调用依赖分析函数,得到所有文件的依赖关系图列表,返回该列表。核心在于如何递归调用依赖分析函数,这里使用广
原创
发布博客 2021.02.23 ·
358 阅读 ·
0 点赞 ·
2 评论 ·
0 收藏

封装Vue组件库

封装Vue组件组件库开发很多项目都会用到界面和功能相似的组件,为了能在不同项目中最大程度重用组件,所以会进行组件库开发,以提供不同项目基础的组件开源组件库Element-UIiView组件驱动开发CDDComponent-Driven Development自下而上构建UI从组件开始,到页面结束:先隔离开发组件,再组合成页面组件最大程度重用并行开发可视化测试组件边界情况的处理组件可以访问$root属性,获取到当前组件树的根Vue实例,如果当前组件没有父实
原创
发布博客 2020.12.10 ·
1265 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

安装sharp包的注意事项

sharp包是基于node.js的高性能图片处理器在使用npm安装sharp的时候,需要注意以下问题使用镜像地址:npm config set sharp_binary_host "https://npm.taobao.org/mirrors/sharp"npm config set sharp_libvips_binary_host "https://npm.taobao.org/mirrors/sharp-libvips"提前下载好sharp某版本号对应的libvips依赖包,放在np
原创
发布博客 2020.11.11 ·
4251 阅读 ·
0 点赞 ·
2 评论 ·
6 收藏

配置命令行启动应用程序

场景需求在命令行中启动应用程序是常见的需求,输入一个命令和路径,就可以在输入的路径下启动对应的应用程序,这样的方式很方便,免得去点击应用程序图标才能打开,类似于vscode的code命令。方法以下方式都针对Mac OS系统终端输入的命令会在$PATH环境变量下寻找,$PATH包含了几个目录,通常选择/usr/local/bin目录来存放新增的命令。方式一将应用程序的可执行文件链接到usr/local/bin目录下,这里以CocosCreator应用程序为例。打开Application目录,找
原创
发布博客 2020.11.05 ·
872 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

为其他仓库托管平台添加密钥

一般而言,除了在GitHub仓库外,很多公司习惯在GitLab上托管代码。因此,开发者通常会有多个密钥,分别为多个托管平台使用。参考资料生成新 SSH 密钥并添加到 ssh-agent生成密钥对使用如下命令生成一个SSH 密钥对ssh-keygen -t rsa -b 4096 -C "email@example.com"其中,- C标志是为了在密钥中添加注释,从而可以在众多的密钥中识别该密钥。输入密钥对的保存路径。如果不使用默认的路径(通常是~/.ssh/),则需要自定义路径,
原创
发布博客 2020.09.17 ·
207 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

服务端渲染SSR的原理与部署

SPA单页应用缺点首屏渲染时间长不利于SEO服务端渲染服务端执行前端框架代码,生成网页内容,返回客户端,客户端激活为SPA。现代化服务端渲染,或称为同构渲染,应用称为服务端渲染应用或同构应用什么是渲染把数据和模板拼接为完整的HTML文件传统服务端渲染数据渲染发生在服务端前后端耦合,不利于维护服务端压力大页面请求的数据量大,但模板中大多数字符都是多余的客户端渲染数据渲染发生在客户端首屏渲染慢:相比于服务端渲染且不带JavaScript脚本的情况加载JavaSc
原创
发布博客 2020.08.11 ·
1206 阅读 ·
3 点赞 ·
0 评论 ·
6 收藏
加载更多