自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MiMeng的博客

学习使用

  • 博客(62)
  • 收藏
  • 关注

原创 watch监视问题和vue3的监视问题

vue中的watch函数用于监视数据的变化vue2中的监视<script src="../../node_modules/vue/dist/vue.js"></script> <div id="app"> <div> <button @click="updataHello">更改欢迎词</button> <button @click="updata

2022-04-23 09:46:43 466

原创 元编程,代理Proxy与反射Reflect

Reflect全局对象作用为了更好统一直接操作对象的方法, Es6中引入了一个内置对象Reflect(比较统一的反射概念,之前js有反射的能力但是并未有统一的反射对象概念),这个reflect对象中的属性即对应的反射Api。还有就是为了修改某些Object方法的返回值,使其变的更加合理为什么使用目前一些针对于对象的内部操作的方法Object和Reflect上都有,但是未来这类属性都将挂载在Reflect对象上也就是说,针对语言内部的方法都将通过Reflect获取。如:// 以前写法Obj

2022-04-20 15:03:33 205

原创 手动实现简单的Promise及其基础功能

文章目录一、Promise期约函数基本使用二、手动实现Promise基础功能1 声明方式2 实现简单的resolve和reject一、Promise期约函数基本使用function Ran(){ return new Promise((resolve, reject) => { setTimeout(() => { let ranDomNum = Math.random(); // 模拟可能成功或者失败的异步任务 ranDomNum > 0.5 ? resol

2022-04-01 12:55:25 575

原创 WebSocket(基础)

什么是WebSocket?WebSocket 是基于TCP/IP协议,独立于HTTP协议的通信协议。WebSocket 是双向通讯,有状态,客户端一(多)个与服务端一(多)双向实时响应(客户端 ⇄ 服务端)。WebSocket 是应用在浏览器的 Socket (是 Socket 模型接口的实现),Socket 是一个网络通信接口 (通信规范)。WebSocket协议端口是80。WebSocket SSL协议端口是443。Socket是TCP/IP协议的网络数据通讯接口(一种底层的通讯的方式)。

2022-03-17 10:46:09 3872

原创 手动实现call,apply,bind函数

实现callFunction.prototype.myCall = function (targetObj, ...resule) { // 判断传入对象的有无 targetObj = targetObj || window; // 向传入对象上挂在this指向,此时this指向调用myCall函数 targetObj.fn = this; // 在内部使用传入对象调用fn方法,这样可以实现更改this指向,指向为传入的目标对象 let value = e

2022-03-15 09:09:26 154

原创 Node中的事件轮询机制

文章目录2 node中的事件循环模型2-1 一些属性2-2 循环模型node事件循环总共有==六个阶段==process.nextTick()函数__实例__2 node中的事件循环模型2-1 一些属性setInterval():----循环定时器setTimeout();—延迟定时器setImmendiate(); —立即执行函数clearInterval();----清除循环定时器clearTimeout();----清除演示定时器clearImmendiate

2022-03-14 10:12:50 1056

原创 Set、Map引用数据类型(WeakSet,WeakMap)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码

2022-03-09 09:49:12 1197

原创 【JavaScript数据结构与算法】图论基础

文章目录

2022-01-13 10:24:20 312

原创 【数据结构与算法】红黑树(了解)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码

2022-01-11 14:25:33 203

原创 【数据结构与算法】树结构(二叉树)

文章目录树结构树结构

2022-01-10 21:34:51 272

原创 【数据结构与算法】链表及双向链表

文章目录链表链表

2022-01-06 19:18:21 356

原创 【数据结构与算法】哈希表

文章目录哈希表结构哈希函数字符转大整数哈希化哈希冲突链地址法开放地址法哈希化的效率哈希化的效率哈希化中的霍纳法则(秦九韶算法)实现哈希表(链地址法解决哈希冲突[使用数组])封装一个哈希函数封装哈希表哈希表的扩容哈希表哈希表(Hash table )---- 散列表哈希表是一种非常重要的数据结构,几乎所有的编程语言都用到了或者间接用到了哈希表它的结构就是一个数组,但是它与数组的不同之处在于对下标值的变换,这种变换称之为哈希函数,通过哈希函数获得 HashCode哈希表通常是基于数组实现的,

2022-01-06 16:46:48 812

原创 【数据结构与算法】队列及优先级队列

文章目录队列图解队列实现队列实现队列方法优先级队列实现优先级队列使用队列解决约瑟夫问题(击鼓传花问题)图解通过队列解决约瑟夫问题队列队列(Queue),它是一种受限的线性结构(受限表),先进先出是它的特点(first in first out)受限的地方是只允许在该结构的前端(front)进行删除操作且只能在表的后端(rear)插入数据类似于商场排队,先排队的人优先处理线程队列在开发中,为了任务能够并行处理,通常会开启多个线程。但是一般情况下我们不能让大量的线程同时运行处理任务

2021-12-31 15:23:27 372

原创 【ES6】 Promise相关(事件循环,宏/微任务,promise,await/await)

文章目录1 同步与异步1-1 同步1-2 异步2 执行栈和事件队列(task queue)以及事件循环3 宏任务与微任务3-1 宏任务,微任务的区别3-2 执行4 Promise4-1 Promise是什么?4-2 为什么使用Promise?4-2-1 指定回调函数更加的灵活4-2-2 支持链式调用,可以解决回调地狱的问题4-3 Promise状态[PromsieState]的改变4-3-1 Promise的状态4-3-2 Promise对象中的值4-4 Promise的基本工作流程4-5 Promise

2021-12-14 20:20:40 1191 1

原创 关于Vue3 + Ts 项目 遇到 关于路径动态加载 和 组件拷贝关系问题的记录

vue3 二次渲染图片路径报错

2022-09-10 15:21:40 865 1

原创 小程序导入Vant Weapp 流程

如何引用vant针对小程序的组件库?1 在项目根目录下进行npm 初始化\AppLet\miniprogram-2> npm init -y2 调试好构造npm打开后选择构建npm,会提示构建成功3 npm 下载 vant weapp# 通过 npm 安装npm i @vant/weapp -S --production4 去除app.json 中的 “style” : “v2” , 因为可能导致样式冲突5 手动在 project.config.json 内添加如下配置"se

2022-05-20 19:21:16 280

原创 vue3响应式数据的相关函数

问题在初次使用vue3的时候,页面上有一个点击按钮,当点击按钮的时候页面数据发生相应的改变。export default { name: "HelloWorld", props: { msg: String, }, setup(props) { let data = { num: 0, }; let say = "hello"; function add() { data.num++; say = "V

2022-04-22 17:31:24 2171

原创 Vuex及其项目化

什么是Vuex?是一个专门在Vue中实现集中式状态管理的一个Vue插件,对Vue应用中多个组件的共享状态进行集中式的管理 ,也是组件间通讯的方式。什么时候使用Vuex?多个组件依赖于同一个状态来自不同的组件的行为需要变更为同一状态Vuex的5个核心理念StateActionsMutationsGetterModulestate状态管理的数据核心公共存放的数据:用来存储变量actions和mutation的功能大致相同,不同之处在于 =>1.Action提交的是

2022-04-17 15:00:36 689

原创 Vue2,Vue3生命周期及其钩子函数

什么是vue生命周期Vue 实例有⼀个完整的⽣命周期,也就是从开始创建、初始化数据、编译模版、挂载Dom -> 渲染、更新 -> 渲染、卸载 等⼀系列过程,称为Vue的⽣命周期。什么是生命周期钩子在vue实例的生命周期中会提供一些特定阶段可供调用的函数,这些函数会被调用,程序员可在实例的对应生命周期阶段中进行操作生命周期钩子beforeCreate()这个阶段属于页面初始化之前(vue实例化之前)不能拿到数据,方法,Dom元素不能获取到绑定实例的elcreated(

2022-04-15 12:57:46 3020

原创 五个路由守卫的使用

什么是路由守卫?可以简单理解为路由组件的’门卫’,在进入某个路由的过程中必须先离开自己的守卫,通过其他路由的守卫才能访问到其他路由。全局路由守卫在全局配置的守卫路由,所有的路由导航都会受到全局路由守卫的影响全局前置路由守卫在路由导航的过程中, 页面在跳转之前会进入到前置路由守卫路由切换之前触发,可以控制路由的切换行为beforeEach(to, from, next){} 参数: to 保存了切换的目标路由的信息 from 保存了切换的起始路由的信息

2022-04-14 19:09:43 776

原创 Router对象、Route对象、声明式导航、编程式导航

Router和Route当我们创建实例VueRouter时let router = new VueRouter();会有一个全局的router路由器对象, 这个路由器对象在其他路由组件上可以通过路由组件的实例.$router的方式访问到当跳转到一个新的路由时,会创建一个新的route实例对象,每一个路由实例都是唯一的, 保存着当前路由的状态信息。注意:在应用中只存在唯一的Router对象,在每个路由组件中访问到的Router对象都是一个Router实例,互相之间是相同的,但是每个路由之间的ro

2022-04-13 17:11:02 544

原创 如何使用vueRouter?

3 < router-link > 路由链接组件,用于触发跳转到相应的路由页面 <router-link tag="button" active-class="active" :to="{ path: '/about', }" >标签1</router-link >标签属性默认情况下,router-link是一个链接a标签通过指定tag标签属性可以设置routerlink展

2022-04-13 17:02:00 944

原创 前后端跨域解决方案

同源策略最早由netscape公司提出,是浏览器的一种安全策略同源:协议,域名,端口,必须完全相同。违背同源策略就是跨域常用跨域的解决方案前端设置对应的请求头后端设置通配响应头使用jsonp的方式处理(利用script标签不受跨域协议的影响)设置代理服务器的方式处理(利用服务器与服务器之间不受跨域协议的影响)...

2022-03-29 09:23:40 2275

原创 使用jsonwebtoken生成访问密钥

后端const { response } = require('express');const express = require('express');const fs = require('fs');const jwt = require('jsonwebtoken');const app = express();app.use(express.urlencoded({ extended: false }));app.use(express.json());app.use('*',

2022-03-28 09:15:17 292

原创 Header内置对象

作用针对请求头或者响应头进行一些操作创建构造函数创建let headers = new Header();创建的过程中可以向其中添加初始化的头数据let header = new Header({ 'Content-Type' : 'application/json', ---------------------------------- "Content-Type' : 'text/html', ········· });Apis方法描述append()

2022-03-25 16:52:34 460

原创 如何使用input表单向服务发送(占用较小)图片文件(body传输)?涉及到FileReader内置对象

由来在写数据处理后台的时候遇到一个问题?input:file发送文件到后台的时候发现文件无法被整体上传,上传后也无法直接写入到服务的静态文件中解决1 使用 input:file接收要上传的文件注意这里的文件编码需要使用input.files[0]来拿到, 普通的通过input.value只能获取到文件流地址<body> <input type="file" name="" id="file"> <button class="btn">上传&l

2022-03-25 16:28:36 507

原创 Mysql中的索引与视图

索引什么是索引数据库中有两种检索表方式:全表扫描:(表中数据过多时会有效率问题)索引检索:(效率高)原理:缩小了扫描文件的范围。注意-----索引虽然可以提高检索效率,但不可随便添加索引,因为索引也是数据库中的对象,也需要不断地维护,有维护成本的。数据一旦被更改,索引也可能被更改什么情况下添加索引数据量庞大(根据客户的需求,根据线上的环境)该字段很少dml操作。(因为字段进行修改操作,索引也需要维护)该字段经常出现在where子句中。(经常根据某个字段查询)尽量根据主键

2022-03-22 15:12:17 1178

原创 npm 及 webpack打包工具

npm包管理工具1,认识npmnpm即node的包管理器是Node.js默人的、以JavaScript编写的软件包管理系统npm已经是前端工程师的标配在npm上我们可以很方便的下载我们所需要的的包, 如jquery,vue等​ 官网 npm官方网站2,下载先下载node.js(因为node中自带有npm,所以无需多下载npm)node官网然后使用node.js的命令工具查看node版本$ node -v# 查看node版

2022-03-18 10:40:30 4062

原创 Node模版引擎(ejs, art-template)

模版引擎1 ejs模版引擎安装ejs模版引擎$ npm i ejs -s 使用模版引擎const express = require('express');const app = express();// 设置视图模版引擎 'ejs'app.set('view engine', 'ejs');// 配置模版目录 让程序直到模版引擎的位置app.set('view', './views');app.get('/show', (request, response) =>

2022-03-16 12:21:49 2018

原创 伪数组转真数组

什么是伪数组?1.具有length属性,可以获取长度。2.具有索引,可以通过遍历获取所有元素。3.不可以使用数组的内置方法和属性。常见的伪数组1.函数的内置对象arguments,它是所有实参组成的伪数组。2.DOM对象组成的伪数组,通过document.querySelectorAll等获得的dom对象列表(nodelist)。3.jQuery对象组成的伪数组伪数组转真数组1 遍历转换(function(){ console.log(arguments) // Argu

2022-03-15 09:07:32 929

原创 深拷贝与浅拷贝

浅拷贝:自己创建一个新的对象,来接受你要重新复制或引用的对象值。如果对象属性是基本的数据类型,复制的就是基本类型的值给新对象;但如果属性是引用数据类型,复制的就是内存中的地址,如果其中一个对象改变了这个内存中的地址,肯定会影响到另一个对象。方法1Object.assign()let obj1 = { a:{ b:1 }, sym:Symbol(1)}; Object.defineProperty(obj1, 'innumerable' ,{ value:'不可枚举属性',

2022-03-15 09:05:58 165

原创 Node中间件和路由器

中间件(需要使用express)本质上是一个函数,包含三个参数request、 response 、next作用执行任何代码修改请求和响应对象终结请求-响应循环(让一次请求得到响应)调用堆栈中的下一个中间件或者路由分类应用级中间件(全局)(过滤非法的请求,例如防盗链)第三方中间件(通过npm下载的中间件)内置中间件(框架内部内置的中间件)路由中间件(Router)应用中间件第一种使用全局中间件所有的请求都会进入该中间件const express = r

2022-03-14 22:25:41 1046

原创 Ajax和请求限制

1,ajax介绍AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。AJAX 不是新的编程语言,而是一种使用现有标准的新方法。AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。AJAX 不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术Ajax 核心是JavaScript和 Xml (json)

2022-03-14 10:46:31 860

原创 Node中的FS核心模块(包括可读、可写传输流)

FS核心模块(fileSystem)在Nodejs中有一个文件系统,对计算机中的文件进行增删改查操作。在nodejs中我们提供了一个模块,叫做fs模块系统,专门用于操作文件系统。在nodejs中这个模块是可以直接使用的。使用引入文件系统const fs = require('fs');读取文件fs.readFile(path, options ,(error, data) => {});此方法用于读取文件,传入三个参数,第一个参数是文件路径+文件名,相较于自身文件

2022-03-14 10:31:06 3238

原创 Node中的Buffer缓冲器

4 buffer缓冲器Buffer是一个和数组类似的对象,不同的是Buffer是专门用来保存二进制数据。可以将获取的图片,视频,音频等文件转为二进制数据保存特点大小固定: 在创建时就确定了,且无法调整性能较好:直接对计算机内存进行操作每个元素大小为1字节(byte)使用> Buffer[Function: Buffer] { poolSize: 8192, from: [Function: from], of: [Function: of], al

2022-03-14 10:18:13 270

原创 对象,类与面向对象

文章目录1 对象1-1 理解对象1 对象1-1 理解对象对象是一组属性的无序集合(一组没有特定顺序的值),每个属性或方法都由一个名称来标识,名称又映射到一个值。

2022-03-02 14:28:35 156

原创 手动实现New关键字操作

new 关键字的操作在使用new调用类构造函数执行的操作在内存中创建一个新对象这个新对象内部的[[prototype]](显式原型)指针被赋值为构造函数的prototype属性构造函数内部的this被赋值为这个新对象(即this指向新对象)执行构造函数内部的代码(给新对象添加属性)如果构造函数返回非空对象,则返回该对象;否则,返回刚创建的新对象基于以上的操作步骤封装new手动实现new/** * * 手动实现new关键字 * * new 关键字 执

2022-03-02 11:37:26 180

原创 函数的调用方式

方法模式调用函数let obj = { uname: 'Tom', age: 22, Demo(){ console.log(this.uname, this.age); }}// 方法模式调用let demo = obj.Demo();console.log(demo);// Tom 22函数模式调用函数function foo(){}var func = function(){}// 函数模式调用foo();func();(function(){})();

2022-03-01 17:08:01 54

原创 【客户端存储】

1 CookieHTTP cookie 也叫作 cookie , 最初用于存储客户端存储会话信息。 要求服务器在响应HTTP请求时,通过发送Set-CookieHTTP头部包含会话信息。浏览器会存储这些会话信息,并在之后的每一个请求中会通过HTTP头部cookie发送给服务器1-1 cookie组成名称标明唯一的cookie,注意cookie名不会区分大小写, 也就是说’myCookie’ 和 'MyCookkie’是同一个cookie值存储在cookie中的字符串值,此值必须经过url编码·

2022-02-18 21:43:15 514

原创 【无缝轮播】

无缝轮播图实现效果

2022-02-17 18:16:14 299

空空如也

空空如也

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

TA关注的人

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