- 博客(20)
- 资源 (1)
- 收藏
- 关注
原创 用Python写了一个上课点名系统(附源码)
今天刷到了一个这样的短视频,我寻思我是不是也可以写一个类似的上课点名程序,想法经不起等待,说写就写~一.准备工作1.TkinterTkinter 是 python 内置的 TK GUI 工具集。TK 是 Tcl 语言的原生 GUI 库。作为 python 的图形设计工具,它所使用的 Tcl 语言环境已经完全嵌入到了 python 解释器中。我们使用Tkinter开发GUI界面。2.PILPIL(Python Image Library)库是Python语言的第三方库,需要通过p
2021-12-07 14:14:45 43739 2
原创 手写函数来解析 URL 的 querystring
var a = 'https://shanyue.tech?name=%E5%B1%B1%E6%9C%88&a=3'function parseUrl(url) { const keyPairs = url.split("?")[1].split('&'); return keyPairs.reduce((params,item) => { const [k,v] = item.split('='); params[k]=v .
2021-12-06 14:31:54 452
原创 56个 JavaScript 实用工具函数(开发必备)
1. 数字操作2. 数组操作3. 字符串操作(6)全角转换为半角4. 格式转化5. 操作存储6. 操作cookie8. 操作URL9. 设备判断10. 浏览器操作(1)滚动到页面顶部exportconstscrollToTop=()=>{constheight=document.documentElement.scrollTop||document....
2021-12-03 11:26:23 306
原创 vue前端埋点 - 神策埋点
添加对应文件 可根据项目需求 自定义指令(directive)当然别忘了 全局 挂载 在项目入口 main.js 挂载。标题也有说,我们用的是。
2024-06-13 15:21:40 490
原创 教你怎么前端实现埋点上报
因为埋点实际上是对关键节点的数据进行上报是和服务端交互的一个过程,所以我们可以和后端约定一个接口通过ajax去进行数据上报。方法可用于通过HTTP POST将少量数据异步传输到 Web 服务器。前端埋点上报常使用ajax,img,navigator.sendBeacon。不推荐使用ajax。如果考虑兼容性的话,img是不二之选。目前最合适的方案是navigator.sendBeacon,不仅是异步的,而且不受同域限制,而且作为浏览器的任务,因此可以保证会把数据发出去,不影响页面卸载。
2024-06-13 15:08:25 972
原创 Chrome DevTools中的这些骚操作,你都知道吗?
大家平时用的最多的Chrome 主题可能就是白色/黑色这两种了,但用的久了,难免想尝试像IDE一样切换主题。在平常开发过程中,我们经常有些JavaScript的代码想在中调试,直接在console下 写比较麻烦,或者我们经常有些代码片段(防抖、节流、获取地址栏参数等)想保存起来,每次打开Devtools都能获取到这些代码片段,而不用再去google,正好就提供了这种功能。如图所示,在Sources这个tab栏下,有个Snippets标签,在里面可以添加一些常用的代码片段。
2024-06-13 15:03:40 939
原创 【移动端真机调试指南】
前言移动端的真机调试,总结了下就大致就2种方法,要不就是网页面注入js脚本,劫持console、网络请求等,比如:vConsole、eruda等调试库。要不就是使用抓包工具劫持浏览器与服务器的请求,比如:Charles,下面分享下我使用过的方法。1、alert大法这有啥好说的,(⊙﹏⊙)推荐指数0颗星2、抓包工具Charles、Fiddler平时只用抓取各种网络,需要设置手机的wifi代理推荐指数2颗星3、vConsole、eruda等调试库这个方法需要在页面中插入...
2022-02-14 16:15:19 489
原创 vue3项目架构整理
前言由于vue3.2版本的发布,<script setup>的实验性标志已经去掉,这说明这个语法提案已经正式开始使用,并且我个人对这个方案表示非常喜欢,其他的更新[1]请自行了解。到目前为止,我认为 vue3 已经完全可以用于生产环境。在此将我的开发体验,总结至此,分享给大家。我认为前端架构核心工作是定制一套适合当前业务需求的解决方案,从而降低需求的增加而带来的技术实现的复杂度。下面我将从 16 个方向,逐渐带领大家搭建一套属于你自己的脚手架,制定一套合理的解决方案,为项目打下良好...
2022-01-05 11:16:31 4615
原创 2021 年 JS 烧脑面试题(20多道具有一定迷惑性的js题)
加入我们一起学习,天天进步本文精选了20多道具有一定迷惑性的js题,主要考察的是类型判断、作用域、this指向、原型、事件循环等知识点,每道题都配有笔者详细傻瓜式的解析,偏向于初学者,大佬请随意。第1题leta=1functionb(a){a=2console.log(a)}b(a)console.log(a)答案2、1解析首先基本类型数据是按值传递的,所以执行b函数时,b的参数a接收的值为1,参数a相当于函数内部的变量,当本作用域有和上...
2021-12-09 13:48:07 245
原创 AST原理解析
什么是 AST抽象语法树(Abstract Syntax Tree)简称 AST,是源代码的抽象语法结构的树状表现形式。webpack、eslint 等很多工具库的核心都是通过抽象语法书这个概念来实现对代码的检查、分析等操作。// 简单函数function square(n) { return n * n;} // 转换后的AST{ type: "FunctionDeclaration", id: { type: "Identifier",
2021-12-06 15:42:20 1646
原创 js如何实现继承
// es6中的class类的继承class Animal { constructor (name) { this.name = name } hello () { console.log('hello') }}class Dog extends Animal { constructor (name, say) { super(name) this.say = say }}// 原型继承function Animal (name..
2021-12-06 14:47:58 72
原创 如何使用 async/await 实现 Promise.all 的效果
const all = (list) => { const res = new Promise((resolve, reject) => { let length = list && list.length let count = 0 let result = [] if(!list || list.length === 0) { resolve(result) }.
2021-12-06 14:40:15 1164
原创 如何实现 promise.map,并限制并发数
// 并发数量计数let count = 0function run () { if (count < 3 && list.length) { count+=1 get(list.shift()).then(() => { count-=1 run() }) }}// 限定三个并发数量run()run()run()class Limit { constructor (n) { this.l.
2021-12-06 14:38:21 911
原创 如何实现一个深拷贝
JSON乞丐Object.assign单层// 定义一个深拷贝函数 接收目标target参数function deepClone(target) { // 定义一个变量 let result; // 如果当前需要深拷贝的是一个对象的话 if (typeof target === 'object') { // 如果是一个数组的话 if (Array.isArray(target)) { result = []; // .
2021-12-06 14:34:39 237
原创 前端项目按需引入UI组件
在开发中,我们引入 UI 框架,比如 vue 中用到的 element-ui,vant 或者 React 中的 antd 都支持全局引入和按需引入,默认是全局引入,如果需要按需引入就需要安装一个 babel-plugin-import 的插件,将全局的写法变成按需引入的写法。就拿我最近开发移动端用的 vant 为例, import { Button } from 'vant' 这种写法经过这个插件之后会变成 import Button from 'vant/lib/Button' 这种写法,引用整个 v
2021-12-06 13:55:36 434
原创 这9种Vue技术你掌握了吗?
现在,Vue.js已成为前端开发的热门框架。有很多工程师利用Vue.js的便利性和强大功能。但是,我们完成的某些解决方案可能未遵循最佳做法。好吧,让我们看一下那些必备的Vue技术。1. 函数组件函数组件[1]是无状态的,没有生命周期或方法,因此无法实例化。创建一个函数组件非常容易,你需要做的就是在SFC中添加一个functional: true属性,或者在模板中添加functional。由于它像函数一样轻巧,没有实例引用,所以渲染性能提高了不少。函数组件依赖于上下文,并随着其中给定的...
2021-12-06 10:47:53 888
原创 CSS 工程化技术
最近业务调整,组内开启了前端工程化方面的基建,我主要负责 CSS 技术选型这一块,针对目前业界主流的几套方案进行了比较完善的调研与比较,分享给大家。目前整个 CSS 工具链、工程化领域的主要方案如下:而我们技术选型的标准如下: 开发速度快 开发体验友好 调试体验友好 可维护性友好 扩展性友好 可协作性友好 体积小 有最佳实践指导 目前主要需要对比的三套方案: Less/Sass + PostCSS 的纯 C
2021-12-03 11:56:37 380
个人晋升述职报告PPT套装
2023-11-07
新媒体运营+前端开发类的简历模版
2022-06-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人