everyday
文章平均质量分 53
日拱一卒无有尽,功不唐捐终入海
Silent Land
你还有好多未完成的梦,你有什么理由停下脚步?
展开
-
手写【深拷贝】
使用实现 无法拷贝等。原创 2023-05-04 23:16:02 · 730 阅读 · 1 评论 -
vue JSX实现一个通用表单生成器
项目中有大量的简易表单,使用组件将其封装起来提高工作效率该组件封装不适用于太具有个性化的表单使用冻结优化配置信息。原创 2022-07-24 19:02:25 · 1187 阅读 · 0 评论 -
实现一个通用表单重置功能
vue2实现一个通用的表单重置与恢复功能原创 2022-07-07 11:09:35 · 383 阅读 · 0 评论 -
WebSocket——vue3简易聊天室
WebSocket——vue3版实现原创 2022-06-15 23:48:26 · 2052 阅读 · 7 评论 -
webSocket——Vue2简易聊天室
使用vue2实现webscoket简易聊天室原创 2022-06-11 21:53:56 · 2357 阅读 · 0 评论 -
使用node.js搭建一个简易的的小程序/app后台
使用express搭建小程序、app后台原创 2022-06-05 20:40:23 · 772 阅读 · 0 评论 -
指令实现按钮级别权限控制
创建一个has指令在页面中使用指令绑定前绑定后实现原理原创 2022-06-01 22:31:10 · 315 阅读 · 0 评论 -
Vue.js全局API——directive
实现一个自定义loading指令请求数据还未返回加载loading,数据加载完成loading隐藏一、创建指令src目录新建directives文件夹loading.jsimport Vue from "vue"import Loading from './loading.vue'console.log('Loading', Loading)const loadingDirective = { // v-loading 所绑定的元素插入到页面上时触发 inserte原创 2022-05-29 22:38:32 · 369 阅读 · 0 评论 -
Vue.js全局API——filter
情景将后台存的数字订单状态格式化显示在前端使用filter新建filters文件order.js 写处理订单的filter方法export default { setOrderStatus (status) { switch (status) { case 1: return '待付款' case 2: return '待发货' case 3: ret原创 2022-05-24 21:36:00 · 417 阅读 · 0 评论 -
5道偏原理的面试题
写在前面CSDN话题挑战赛第1期活动详情地址:https://marketing.csdn.net/p/bb5081d88a77db8d6ef45bb7b6ef3d7f参赛话题:前端面试宝典话题描述:欢迎各位加入话题创作得小伙伴,如果我没有猜错得话,我觉得你是应该同我一样是一位前端人。如今前端在IT事业中的占比越来越重,已经成为不可缺少的部分,前端技术也是层出不穷,各种技术类、技术框架也蜂拥而出,前端面试的难度也随之增加,如果我们拥有一套前端面试宝典。如果你是应聘者:你就可以从容的solo面试官,原创 2022-05-20 22:07:51 · 305 阅读 · 0 评论 -
使用Vue的mixin混入打造UI组件库
一、定制自己的组件在src下新建一个libs设计组件传值样式Button.vue<template> <button :class="['my-btn', btnStyle]"> <slot></slot> </button></template><script>export default { name: 'MyBtn', props: { btnStyle: Stri原创 2022-05-19 23:35:15 · 197 阅读 · 0 评论 -
重写forEach解决异步问题
情景需按顺序调用的接口无法使用forEach遍历调用// 已封装的promise请求数组const fetchList = [getInfo, getData, gettable]fetchList.forEach(async (item) => { await item()})这里生成的是多个async函数,无法保证其执行顺序forEach封装forEach源码// Production steps of ECMA-262, Edition 5, 15.4.4.1原创 2022-05-18 00:08:03 · 162 阅读 · 0 评论 -
extend实现一个modal函数式组件
效果实现一、封装一个基础modal弹窗新建一个messageBox组件messageBox.vue<template> <div :class="['message-box', type]"> <div class="inner"> <header class="header"> <h1 class="title">{{title}}</h1> <s原创 2022-05-17 00:01:25 · 269 阅读 · 0 评论 -
一道关于arguments的面试题、匿名立即执行函数
arguments和实参的关系情景一:function side(arr) { arr[0] = arr[2]}// 这里c有初始值,会运用到es6结构赋值,就是处于严格模式下function fn(a,b,c = 3) { c = 10 side(arguments) // 不会影响到abc // a: 1, b:1, c:10 return a + b + c}fn(1,1,1)// 12情景二:function side(arr)原创 2022-05-14 23:59:41 · 193 阅读 · 0 评论 -
Object和Map的区别
概念Object是最常用的一种引用类型数据,可用于存储键值对的集合,在ECMAScript 1st 里添加的Map是键值对的集合,采用Hash结构存储,在ECMAScript2015版本里新增的Hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简单的说就是一种将原创 2022-05-13 23:28:09 · 1811 阅读 · 0 评论 -
JS中的稀疏数组与密集数组
一、概念密集数组: 占据连续的内存空间,数组元素之间紧密相连,不存在间隙const arr = [1, 2, 3, 4, 5]稀疏数组: 数组原素之间存在间隙const arr = [1, 2, 3]arr[9] = 9arr // [1, 2, 3, empty × 6, 9]二、特点对于稀疏数组中empty不能用filter、map、forEach等方法处理const arr = [1, 2, 3]arr[9] = 9arr // [1, 2, 3, empty × 6,原创 2022-05-12 21:57:00 · 270 阅读 · 0 评论