- 博客(34)
- 资源 (1)
- 收藏
- 关注
原创 JS对象转url参数
JS对象转url参数开发中,前后端数据传递需要加密,遇到GET请求时,需求如下:1. 需要先将数据对象转换成url地址参数格式;2. 再将其AES加密;3. 将其和baseURL拼接。
2022-07-15 15:07:03
6671
原创 JS设计模式——提高代码质量(有哪些设计模式可以帮助我们提高代码质量)
本篇文章主要介绍几个设计模式(策略模式/状态模式、外观模式、迭代器模式、备忘录模式)来帮助我们提高代码的质量。
2022-06-18 10:04:25
459
原创 JS设计模式——封装与对象(如何使用创建型设计模式更好的封装代码、更好的创建对象)
在学习如何使用创建型设计模式更好的封装代码、更好的创建对象之前,先了解一下封装与对象。
2022-06-16 14:35:02
334
原创 JS设计模式——设计模式概论
在了解设计模式后,发现它起始没有那么高大上,有些是我们平时开发中已经用到的东西(更好的设计模块,组织共同的代码),它只是给这些好用的代码模式起了一个名字而已。
2022-06-14 17:24:32
232
原创 解决uniapp开发微信小程序AES加密报错:TypeError: Cannot read property ‘crypto‘ of undefined
今天在配置小程序前后端加密传输时,遇到微信开发者工具报错:TypeError: Cannot read property 'crypto' of undefined。
2022-06-13 17:08:57
4201
1
原创 JS异步编程——WebWorker多线程机制
JS采用的是单线程机制,所有的任务只能在一个线程上完成,前面的任务没有完成就只能等待。随着计算机计算能力的增强,多核处理器的出现,单线程已不能充分的发挥计算机的算力,WebWorker就是给主线程创建多线程的环境,实现主线程运行时,WebWorker线程在后台运行,两者互不干扰,待WebWorker线程任务完成后,将结果返回给主线程。...
2022-06-11 15:27:09
2577
原创 JS异步编程——Generator函数和Async/Await
随着前端技术的发展,在开发中,Async/Await的应用越来越高。本篇文章从Generator函数到Generator自动执行器再到async/await语法糖,深入理解它们其中的原理。
2022-06-09 11:22:09
683
原创 JS异步编程——深入理解Promise
解决异步编程回调地狱问题的解决方案Promise、Generator和async/await已被ES6收录,发布/订阅和deferred对象是社区中的解决方案。本篇文章重在深入理解Promise,手写一个Promise方法。
2022-06-07 17:39:36
1057
原创 JS异步编程——Event Loop事件循环及发布订阅
在JavaScript中,异步是一个重要的内容,该篇从基础的进程、线程开始,系统的了解异步。
2022-06-06 16:28:06
535
原创 JS函数——内存管理
随着前端技术的深入,我们会发现,在浏览器端:“开发的网站消耗内存过大会使浏览器压力过大,导致浏览器卡顿”。在Node端:“内存如果不够,服务就会中断(由nodejs开启的服务,如果不管理内存,当内存不够时,就会中断)”。
2022-05-28 15:47:15
379
原创 JS对时间的操作(new Date())
方法列表:方法 描述 new Date() 返回Sat Mar 5 2022 09:26:12 GMT+0800 (中国标准时间) getFullYear() 获取四位的年(yyyy) getMonth() 获取月(0-11) getDay() 以数值获取周名(0-6) getDate() 以数值返回天(1-31) getHours() 获取小时(0-23) getMinutes() 获取分(0-59) getSeconds
2022-03-12 10:37:08
6710
原创 JS中数组的合并与去重
一、数组(Array)的合并 1.forEach()遍历其中一个数组,将该数组的每一项push到另一个数组中//遍历合并let arr1 = [ 1, 2, 3, 4, 5];let arr2 = [ 7, 8, 9, 4, 5];arr1.forEach( item => arr2.push(item) ); 2.拓展运算符(ES6的)//拓展运算符let arr1 = [ 1, 2, 3, 4, 5];let arr2 = [ 7, 8...
2022-03-11 17:19:14
29575
1
原创 搭建vue开发环境——安装node和vue cli(vue脚手架)
1.安装node.js(vue需要依赖node的npm包管理工具) node.js安装包下载地址:下载 | Node.js (nodejs.org)2.双击安装,安装路径改到D:盘下(C:盘启动需要管理员权限运行),其他都默认就可以。3.安装完成后, 3.1检测是否安装成功win+R(打开运行框);输入cmd(打开命令框);输入node -v或npm -v(显示版本号,表示安装成功); 3.2查看版...
2022-03-08 13:36:17
1556
原创 vue项目中打印数据或表格(使用第三方依赖vue-printjs)
第三方依赖vue-printjs(下面示例打印的是Html类型,该插件可以指定不打印的部分) 资源包网址:GitHub - xyl66/vuePlugs_printjs: vue打印插件1.安装vue-printjsnpm i vue-printjs -S2.全局引入vue-printjs//该文件为main.jsimport Print from 'vue-printjs'Vue.use(Print)3.在需要打印表格或数据的组件中使用<temp...
2022-03-04 09:47:04
3998
1
原创 vue项目中打印数据或表格(使用第三方依赖print-js)
一、 第三方依赖print-js 资源包文档网址:https://printjs.crabbly.com/参数列表:参数 默认值 说明 printable null 文档源:pdf 或图像 url、html 元素 id 或 json 数据对象。 type 'pdf' 可打印类型。可用的打印选项包括:pdf,html,image,json和raw-html。 header null 用于 HTML、图像或 ...
2022-03-03 18:14:09
3767
3
原创 vue项目中导出excel文件(使用第三方依赖vue-json-excel)
资源包网址:GitHub - jecovier/vue-json-excelhttps://github.com/jecovier/vue-json-excel参数列表:参数 类型 说明 默认值 data Array 要导出的数据。 fields Object 要导出的 JSON 对象中的字段。如果未提供,则将导出 JSON 中的所有属性。 export-fields (exportFields) Object 用于修复使
2022-03-02 17:43:59
2416
原创 Vue项目优化·打包
1.项目优化 1.1 路由懒加载 (webpackChunkName: "login" //Login.vue打包生成的js文件命名为login)import Vue from 'vue'import VueRouter from 'vue-router'Vue.use(VueRouter)const routes = [ { path: '/', redirect: '/login', }, { path: '/logi...
2022-03-01 17:04:33
792
原创 axios的使用
1.安装:npm install axios -S 2.默认配置:axios.defaults例:axios.defaults.headers['Authorization']='Bearer'+' '+token; 3.创建一个新的axios:axios.create()例:const service = axios.create({ b...
2022-03-01 17:03:29
837
原创 正则表达式(常用正则表达式)
一、正则表达式1.被选字符:规定某字符上的被选字符集(例:[0-9]、[a-z]、[A-Z]);2.预定义字符集:常用备选字符的简化符号; 2.1、[0-9]为\d 2.2、[0-9a-zA-Z_]为 \w 2.3、空字符 为 \s 2.4、所有字符(不包含换行和回车) ...
2022-03-01 17:01:27
1943
原创 js动态获取界面高度
网页可见区域(body)宽: document.body.clientWidth网页可见区域(body)高: document.body.clientHeight//最常用、兼容性强的两个 网 页可见区域宽:document.documentElement.clientWidth 网页可见区域高:document.d...
2022-03-01 16:59:32
2321
原创 JS中this的指向问题(面试题)
// 1.函数直接调用时,默认this指向window; function demo(){ console.log(this);//第一个this function demo1(){ console.log(this);//第二个this } demo1();//在dem...
2021-06-22 09:31:35
1220
原创 前端面试题003(display的属性和作用)
1.none是隐藏,是有这个盒子的,但是将它隐藏了起来,不显示在屏幕上;2.block是将元素改为块级元素(独占一行,可设置大小),3.inline是将元素改为行元素(不独占一行,不能设置大小)4.inline-block是将元素改为行内块元素(既可以不独占一行,又可以设置大小)...
2021-06-16 13:57:44
358
原创 前端面试题002(CSS的字体单位px,em,rem,%)
1.px(像素)是根据显示器屏幕的分辨率,代表屏幕中的一个个的点;2.em是每个子元素透过「倍数」乘以父元素的px值(浏览器默认字体大小是16px,也就是默认1em=1。
2021-06-16 13:28:32
205
原创 前端面试题001(CSS的居中方式)
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>前端面试题</title> <style type="text/css"> .box1{ width: 400px; height: 300px; ...
2021-06-16 12:56:12
168
原创 JS中的三种继承方式(原型链继承、冒充继承、混合继承)
//创建一个人类 function People(name,age,sex,country){ this.name=name; this.age=age; this.sex=sex; this.country=country; } People.prototype.eat=functio...
2021-06-15 15:51:13
363
1
原创 JS的原型链(代码+图解)
function Father(name,age){ this.name=name; this.age=age; } Father.prototype.hours=function (){ console.log("我有一套房子!"); } Father.prototype.car=function (){ ...
2021-06-14 16:50:07
254
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人