自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 资源 (1)
  • 收藏
  • 关注

原创 2021届前端秋招经验分享(最终拿下拼多多、美团、京东offer)

2021届秋招总结(拼多多、美团、京东offer)战绩秋招一共投递了11家公司,一共21场面试,拿了3个offer心得作为一个本硕双非、没有项目、大厂实习以及比赛名次菜鸡,整个秋招的感觉过的身心俱疲。我的策略就是提前准备,广撒网捞大鱼。在准备方面,分基础、项目和算法讲吧。基础基础这块没啥说的,Java基础、多线程、分布式、JVM、集合类、Spring、数据库等。详细内容可以参考我的博客,下面也会给出我个人结合网上资料总结的知识点。项目项目因为我只参加了一个军工项目,所以有点吃亏。平时我自己也

2020-12-05 19:44:48 10561 11

原创 2020年零基础前端学习路线(本人亲身经历,9个月拿到拼多多、美团、京东校招offer,5000字长文)

前端学习路线基础准备开发工具结论:vscode最初我选择的是Hbuilder,轻量级,界面淡黄色和绿色结合比较护眼,但是插件较少,格式化代码以及快捷键用着不是特别顺手,转而使用vscode。个人认识业界使用比较多的两种编辑器,vscode 和 webstorm。具体的对比请移步VSCode 与 WebStorm 横向对比个人想法,其实真没必要对于编辑器过于纠结,毕竟只是一个工具,大佬用txt都可以编写代码,在前期学习阶段可以选定一个坚持使用,等到学有所成,对于编辑器有着个人更独特的要求再去选择

2020-12-01 19:00:57 80438 58

原创 5分钟掌握微信小程序 IntersectionObserver

5 分钟掌握微信小程序 IntersectionObserverIntersectionObserver 对象,用于推断某些节点是否可以被用户看见、有多大比例可以被用户看见,用通俗的语言来说就是用于监测目标对象与某个参照物的相交情况。无论是为了埋点,还是实现懒加载都十分有效的API。这篇博文带示例详细讲解API,想必可以解答你心中的疑惑!

2021-03-10 19:39:21 3487

原创 小程序云函数路由tcb-router入门(内附项目实践)

小程序云函数路由tcb-router入门(内附项目实践)1. 解决微信小程序云开发云函数个数限制2. 代码层级结构清晰,底层数据库操作函数可复用3. 还原真实前后端交互过程在个人项目实践过程中,将云函数分为 DAO 层、Service 层和 Controller 层,并根据 RESTful 设计 API,将云开发规范化。

2021-03-10 18:44:12 2006

原创 微信小程序组件化埋点实践

在流量红利逐渐消失的现在,数据的采集、分析和精细化的运营显得更加重要,埋点能够帮助我们收集用户数据,辅助运营决策的同时提供算法以致力于建立用户图像,从而实现个性化推荐。这篇博文带你实现微信小程序组件化埋点,可复用,解耦技术代码和业务代码,真正实现可配置自由埋点~

2021-03-07 20:11:00 2581

原创 小程序云开发从入门到上线看这一篇就够了

小程序云开发从入门到上线看这一篇就够了1. 注册云开发Step 1: 注册小程序Step 2: 新建云开发项目Step 3: 开通云开发Step 4: 新建环境Step 5: 修改 app.js 初始化【数据库环境 ID】2. 项目开发数据库前端操作数据库云函数云函数高阶操作上线踩坑

2021-03-04 19:56:47 1705 1

原创 如何在小程序中使用Symbol类型的iconfont

如何在小程序中使用Symbol类型的iconfont引用库 mini-program-iconfont-cli操作步骤Step 1 安装插件Step 2 生成配置文件Step 3 开始生成小程序标准组件Step 4 引入组件P.S. 更新图标

2021-01-29 22:03:37 914 4

原创 如何一次手写到快乐,JavaScript手写实现深拷贝、bind、jQuery

如何一次手写到快乐,JavaScript手写实现深拷贝、bind、jQuery1. 手写深拷贝函数2. 利用apply手写一个bind函数3. 手写简单的jQuery,需要考虑插件和扩展性。

2021-01-07 20:49:51 263

原创 如何提升前端代码效率——HTML、CSS缩写自动补全

文章目录如何提升前端代码效率——CSS 缩写自动补全CSSVisual FormattingMargin & PaddingBox Sizing如何提升前端代码效率——CSS 缩写自动补全我们在学习前端的时候,是否经常看到视频里的讲师,快速生成 CSS 代码,自己却丈二摸不着头脑;自己写前端的时候,面对重复代码的时候只会复制粘贴,还需要一个个修改 height、width 等特有属性。而以上这一切,都可以通过技巧来实现。在代码编辑器里输入以下代码后使用 Tab(有提示可以使用 Enter)键即

2020-12-30 16:46:19 1924

原创 如何提升前端代码效率——HTML、CSS缩写自动补全

文章目录如何提升前端代码效率——HTML缩写自动补全HTML根据标签名称生成重复标签 * 子标签 > 兄弟标签 + 上级 ^ 分组 () 自增 $ 根据id、class生成div标签标签属性标签内文本如何提升前端代码效率——HTML缩写自动补全我们在学习前端的时候,是否经常看到视频里的讲师,快速生成HTML代码,自己却丈二摸不着头脑;自己写前端的时候,面对重复代码的时候只会复制粘贴,还需要一个个修改class,id等特有属性。而以上这一切,都可以通过技巧来实现。在代码编辑器里输入以下

2020-12-30 16:01:17 2097

原创 初级前端实习面试题(自拟)

初级前端实习面试题(自拟)HTMLHTML5有哪些新特性localStorage、sessionStorage有了解么canvas有了解使用过么,做过什么呢CSS如何实现水平垂直居中伪类元素有了解么,一般用来处理什么盒模型flexJSES6新特性let const var箭头函数异步Promise、async/await闭包计算机网络跨域浏览器原理性能优化(重绘、回流)VUE生命周期组件通信方式slot小程序...

2020-12-29 19:45:08 612

原创 vue + element-ui + 阿里云oss服务端签名后直传实践

vue + element-ui + 阿里云oss服务端签名后直传实践采用JavaScript客户端直接签名(参见JavaScript客户端签名直传)时,AccessKey ID和AcessKey Secret会暴露在前端页面,因此存在严重的安全隐患。因此,OSS提供了服务端签名后直传的方案。服务端签名后直传的流程如图所示以element-ui组件为例,上传前BeforeUpload先调用后端的policy接口获取签名信息,然后带着签名等信息和图片直接上传到aliyun的OSS。封装上传子组件&

2020-12-23 14:29:26 3936 1

原创 Git小白字典——Git基本命令大全

Git小白字典——Git基本命令大全

2020-12-19 10:07:01 3819

原创 使用Git创建第一个仓库(Gitee / Github)

使用Git创建第一个仓库(Gitee / Github)Gitee 官网Github 官网创建仓库Gitee / Github 都是在其官方网站上创建仓库下面仅选取 Github 作为示例最简单的创建只需要输入仓库名称就可以点击最下方的按钮创建仓库提交第一行代码在代码的根文件夹下打开命令行或者使用VSCode打开终端git init # 创建仓库git add . # 当前目录所有文件添加到git暂存区git commit -m "first commit" # 提交并备注提交信

2020-12-18 15:53:05 4592

原创 生成SSH密钥并绑定Gitee/Github

生成SSH密钥并绑定Gitee/GithubGithub中文教程Gitee中文教程配置个人信息打开Git Bash,输入git config --global user.name "Your Name"git config --global user.email "[email protected]"–global参数表示你这台机器上所有的Git仓库都会使用这个配置。上面这个命令的意义就是告诉git你的信息。注意:这里的 [email protected] 并不约束或要

2020-12-18 14:52:54 4399

原创 Git安装教程(For Windows)

Git安装教程(For Windows)Git 官网Git 下载地址点击箭头所指链接会自动下载,之后的步骤纯小白建议一直点Next即可具体步骤以及每一个步骤的意义请参考下面这篇博客Windows系统Git安装教程(详解Git安装过程)...

2020-12-18 14:16:33 3920

原创 微信小程序性能优化方案

微信小程序性能优化方案提高加载性能小程序代码包准备(下载代码包)开发者代码注入页面渲染优化提升渲染性能setData工作原理优化方法

2020-12-17 18:44:21 9136

原创 小程序分包实践

文章目录小程序分包实践为什么要使用分包如何选择分包使用普通分包配置方法使用独立分包配置方法注意事项分包预下载配置方法小程序分包实践为什么要使用分包首先是业务方面,对小程序进行分包,可以优化小程序首次启动的下载时间;其次是技术方面,多团队共同开发时可以更好的解耦协作;最后是微信方面,对于小程序的单个分包/主包大小不能超过 2M。如何选择分包分包主要分为普通分包和独立分包,主要的区别在于独立分包中不能依赖主包和其他分包中的内容,包括js文件、template、wxss、自定义组件、插件等。主包

2020-12-12 15:40:11 4238

原创 如何规范团队代码,小程序ESLint+Prettier+lint-staged+commit+changelog+standard-version自动规范实践

文章目录如何规范团队代码,ESLint+Prettier+lint-staged自动规范实践ESLint引入Prettier引入husky + lint-staged引入Commit message + Change log引入如何规范团队代码,ESLint+Prettier+lint-staged自动规范实践ESLint引入Prettier引入husky + lint-staged引入Commit message + Change log引入...

2020-12-11 10:35:48 5463 3

原创 微信小程序canvas2D全新API介绍

微信小程序canvas2D介绍前言微信小程序官方在2.9.0开始支持了一个canvas 2D的新API,之前的API不再进行维护,因此之后使用canvas的项目,都建议使用canvas 2D来绘制。那么新的canvas2D API有啥好处呢?全面支持源生H5 JS的写法,迁移H5代码更容易,学习成本更低性能上的优化和提升,复杂动画上帧数明显BUG修复,以及一些不支持的条件完善简介获取canvas节点<canvas type='2d' id='canvas'></can

2020-12-10 11:41:27 12427 11

原创 ES6 逐点突破系列 -- Set Map

文章目录ES6 逐点突破系列 -- Set MapSetWeakSetMapweakMapWeakMap 的用途ES6 逐点突破系列 – Set MapSetES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set本身是一个构造函数,用来生成 Set 数据结构。const set = new Set([1, 2, 3, 4, 4]);[...set] // 1,2,3,4向 Set 加入值的时候,不会发生类型转换,所以 5 和 “5” 是两个不同的值。S

2020-12-09 14:33:25 4423

原创 2020.8腾讯前端秋招面经

两个字符串最大子串fun(2)(3)(4)watch和computed区别,对于computed缓存性的理解惰性加载vue-router怎么触发模块变化

2020-12-01 10:48:37 576 2

原创 Taro踩坑记录(VUE多端同构)

文章目录全局变量全局方法Taro自定义navBarweb-view自定义tabbar坑全局变量VUEXglobalutils新建一个global.jsconst globalData = {};export const setGlobalData = (key, val) => { globalData[key] = val;}export const getGlobalData = (key) => { return globalData[key];}全局方法

2020-11-27 19:59:21 3040 1

原创 2020.10美团前端秋招面经

判断括号的匹配,有几种思路利用递归实现数组求和,注意优化和边界值尾递归、尾调用垃圾回收机制有几种写一个循环引用影响垃圾回收机制weakSet weakMap和set Map有什么区别VUE双向绑定原理怎么实现,通过递归么,能监听多少层属性Object.freeze()了解过么VUEX有用过么,多大的体量用VUEX,VUEX有什么优势所在反问...

2020-11-01 20:52:47 1313

原创 ES6 逐点突破系列 -- 函数的扩展

ES6 逐点突破系列 – 函数的扩展文章目录ES6 逐点突破系列 -- 函数的扩展1. 函数的默认值2. reset参数3. 严格模式4. name属性5. 箭头函数6. 尾调用优化7. Function.prototype.toString()8. catch 命令的参数省略1. 函数的默认值function log(x, y = 'World') { console.log(x, y);}log('Hello') // Hello Worldlog('Hello', 'China')

2020-10-16 09:36:32 5162

原创 VUE逐点突破系列 -- VUE响应式原理剖析

VUE逐点突破系列 – VUE响应式原理剖析手写实现简单的响应式双向绑定<html> <head> <meta charset="UTF-8"/> <title>vue</title> <script src="./vue.js"></script> </head></html><body> <div id="app"> {{

2020-10-02 18:39:16 5425

原创 ES6 逐点突破系列 -- Reflect

ES6 逐点突破系列 – Reflect此文建议结合ES6 逐点突破系列 – Proxy一并阅读1. 概述Reflect对象的设计目的有这样几个。(1) 将Object对象的一些明显属于语言内部的方法(比如Object.defineProperty),放到Reflect对象上。现阶段,某些方法同时在Object和Reflect对象上部署,未来的新方法将只部署在Reflect对象上。也就是说,从Reflect对象上可以拿到语言内部的方法。(2) 修改某些Object方法的返回结果,让其变得更合理。

2020-10-02 18:34:01 5531

原创 VUE逐点突破系列 -- nextTick实现原理

nextTick实现原理vue有个批量、异步更新策略,数据变化时,vue开启一个队列,并缓冲在同一事件循环中发生的所有数据变更。如果同一个 watcher 被多次触发,只会被推入到队列中一次。然后在下一个的事件循环“tick”中,Vue 刷新队列并执行实际 (已去重的) 工作。Vue 在内部对异步队列尝试使用原生的 Promise.then、MutationObserver 和 setImmediate,如果执行环境不支持,则会采用 setTimeout(fn, 0) 代替。源码中,修改一个数据

2020-09-29 19:01:35 5294

原创 VUE逐点突破系列 -- Vue性能优化方法

Vue性能优化方法路由懒加载const router = new VueRouter({ routes: [ { path: '/foo', component: () => import('./Foo.vue') } ]})keep-alive缓存页面<template> <div id="app"> <keep-alive> <router-view/> </keep-alive&gt

2020-09-29 18:59:49 5346

原创 VUE逐点突破系列 -- VUE高精尖面试题解析

new Vue()都做了什么new Vue()是创建Vue实例,它内部执⾏了根实例的初始化过程。具体包括以下操作:选项合并 ⽤户选项、默认选项$children, $refs, $slots, $createElement等实例属性和⽅法初始化⾃定义事件处理数据响应式处理⽣命周期钩⼦调⽤可能的挂载 3. 总结:new Vue()创建了根实例并准备好数据和⽅法,未来执⾏挂载时,此过程还会递归的应⽤于 它的⼦组件上,终形成⼀个有紧密关系的组件实例树。...

2020-09-29 18:53:56 5534

原创 ES6 逐点突破系列 -- Proxy

ES6 逐点突破系列 – Proxy文章目录ES6 逐点突破系列 -- Proxy概述方法Proxy.revocable()this 问题以下内容整理自 阮一峰Proxy - ECMAScript 6入门概述Proxy 可以理解成,在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访问进行过滤和改写。var proxy = new Proxy(target, handler);注意,要使得Proxy起作用,必须针对Proxy实例(上例是p

2020-09-26 10:51:18 5450

原创 JavaScript 逐点突破系列 -- 变幻莫测的this指向

ES6 逐点突破系列 – 变幻莫测的this指向this指向事件调用环境谁触发事件,函数里面的this指向就是谁let button = document.getElemetById('button')button.onclick = function () { console.log(this) //button对象}全局环境浏览器环境下console.log(this) // windownode环境下console.log(this) // module.exports

2020-09-25 17:37:44 5385

原创 ES6 逐点突破系列 -- 字符串的拓展和新增方法

ES6 逐点突破系列 – 字符串的拓展和新增方法1. 字符串的遍历接口for (let codePoint of 'foo') { console.log(codePoint)}// f // o// o2. 模板字符串模板字符串是增强版的字符串,用反引号(`)标识,可以当作普通字符串使用,也可以用来定义多行字符,也可以结合${}实现在字符串中嵌入变量。let a = `superaaa`let b = "star"let c = `${a}${b}`console.log

2020-09-25 09:33:04 5397

原创 2020最全前端面试系列(JS)(前端进阶基础)

前端面试题整理(JS篇)数据类型闭包事件机制事件代理函数节流函数防抖函数总结原型链this指向异步编程

2020-09-22 09:37:27 9241

原创 Kbone踩坑记录(VUE多端开发不得不做的吃螃蟹尝试)

Kbone踩坑记录tabbarkbone-ui使用自定义导航页面跳转扩展API环境判断swiper图片资源wx-web-viewKbone踩坑记录tabbarkbone-ui使用自定义导航页面跳转window.open相当于 navigateTo,页面打开方式为 open;window.location.href相当于redirectTo,页面打开方式为 jump;扩展API环境判断swiper图片资源wx-web-view...

2020-09-22 09:01:12 966

原创 2020.9华为秋招软开面经

2020.9华为秋招软开面经一面自我介绍项目和实习分别做了什么遇到的印象最深的bug,怎么解决的呢参加的几个比赛具体情况,分别担任什么角色回顾一下笔试的几道代码题,谈谈思路手撕代码判断两个由大小写字母和空格组成的字符串在忽略大小写,且忽略空格后是否相等。let str1 = 'asdf aa'let str2 = 'AsdFAA 'function compare(str1, str2){ let strFirst = str1.toLowerCase() let strS

2020-09-17 15:02:33 735

原创 2020.9京东前端秋招面试

京东html5新特性(cookie,doctype)盒模型BEM规范伪类选择器有什么了解布局有什么了解(grid, float, table, flex, block, inline-block)性能优化页面适配重绘回流闭包

2020-09-09 19:08:02 1165

原创 2020.8秋招百度前端面经

百度面经1.几层协议,TCP HTTP分别位于哪一层2.this,箭头3.异步 async-await promise settimeout4.let var 全局变量5.继承6.VDOM7.

2020-09-09 19:07:23 352

原创 2020.9顺丰前端秋招面试

2020.9顺丰前端秋招面试笔试代码格式优化按着五个要求,用 indexOf 就基本解决了,而且明明有一个要求我还没做,它就给了我AC,所以我就没再做了。域名的售卖这个题目不是第一次遇到了,我还是没想到什么好的办法,现在参考网上的方法写了一个,不过我觉得复杂度特别大,他们用python写特别简洁,但是对于JavaScript就是一个又一个的循环,储存一个个index。let list1 = [3, 5];let list2 = [1, 2, 3, 7, 8];let list3 = []

2020-09-09 19:04:44 1789

原创 小程序踩坑记录(canvas实现页面截图、下载文件)(持续更新)

小程序踩坑记录canvas圆角矩形圆内图片保存canvas下载文件

2020-08-27 15:05:51 6101

偏微分数值解实验报告.pdf

数学与统计学院偏微分数值解的实验报告(MATLAB) 1.利用中心差分方法解决自伴算子边值问题 2.利用牛顿非线性算法计算非线性钟摆模型的数值解 3.利用GS、SOR迭代法求解二维椭圆方程

2020-07-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除