自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(169)
  • 收藏
  • 关注

原创 一篇文章图文并茂地带你粗略了解 devServer proxy 原理

devServer proxy 原理前言笔者在网络上查询 devServer 原理的时候,竟然网上没有一篇这样的文章,笔者斗胆用自己的知识阐述一下 devServer 是如何实现跨域的(注意,本篇文章并非完整实现proxy,亦或是实现devserver 的各个功能,仅仅是对 devServer proxy 部分做个粗略的原理解读。在阅读本文之前,希望你有基础的 node.js 知识以及 js 知识。同源政策浏览器有同源政策,对不同域(即协议,主机,端口任何一个不同的 URL)的 http 请求进行

2021-02-17 01:36:57 4801

原创 一篇文章图文并茂地带你轻松学会 HTML5 ajax2.0

JavaScript ajax2.0当你再网络上查询 ajax2.0的时候,会发现几乎查不到什么东西 ,因为其实他和 XMLHttpRequest Level 2 应该是同义的意思。大家似乎都倾向于查询后者。在谈到 ajax2.0 之前,不妨先看一下 ajax1.0 有什么缺陷,导致了 2.0 的诞生。ajax 1.0无法支持文件的上传和读取没有进度反馈信息无法跨域请求数据而新的 ajax2.0 解决了这些问题,并且带来的新的特性ajax2.0假设我们已经创建了一个 xhr 对象co

2021-02-13 22:12:53 284

原创 一篇文章图文并茂地带你轻松学会 HTML5 storage

html5 storage apilocalStorage 和 sessionStorage 是 html5 新增的用来存储数据的对象,他们让我们可以以键值对的形式存储信息。为什么要有 storage ?我们已经有了 session 可以帮助我们存储信息,为何还需要 storage 呢?各个浏览器的 cookie 长度大概只能在 4kb 左右,而 storage 大概能达到 5M,这意味着可以存储更多的信息cookie 可以被后端更改,在每次进行网络请求的时候都会被发送给服务器,而 storag

2021-02-13 00:35:21 364 1

原创 一篇文章图文并茂地带你轻松实践 HTML5 history api

HTML5 history api前言由于笔者在网络上没有找到比较好的关于 history api 的实践案例,有的案例过于杂乱,没有重点,有些案例只是告诉读者 api 是什么,却没告诉怎么用,本文章从零开始带读者实践 history api ,建议和笔者一起写一遍。效果注意 url 变化,另外用到了 虎裤里 和 狼大的图,侵权马上删。流程html 部分需要引入 jquery<!DOCTYPE html><html lang="en"> <he

2021-02-12 14:52:06 244 1

原创 一篇文章图文并茂地带你学习 JavaScript 模块

JavaScript 模块一个模块仅仅就是一个文件。模块之间可以通过一些特殊的库等来引用或导出。为何要模块化?由于大部分的代码是关于修改变量的,如何组织变量会影响编码的质量,以及维护他们的成本。如果只有少数变量,完全可以通过函数作用域解决。但是这也让我们很难在各个函数之间共享变量。例如在曾经的 jQuery 时代,在加载任何 jQuery 插件之前,我们必须先保证引入了 jQuery,这个时候所有的 <script> 标签必须以正确的顺序排列,否则将会抛出错误。当依赖越来越多的时候,

2021-02-10 22:19:18 107

原创 一篇文章图文并茂地带你了解 JavaScript 严格模式

JavaScript 严格模式 use strict前言在很长的一段时间内,JavaScript 是兼容性发展的。这意味着新的语言特性并不会影响原有的代码。但是也带来了一些缺点,一些 JavaScript 的设计者做出的不太好的决定或失误被永远的加入了JavaScript。这种情况直到 ES5 的出现得到了改变。我们可以在代码的首部添加特殊的指令 use strict 来使某些不良的 JavaScript 特性得到改善。本文对于读者来说是补充知识的文章,由于现在许多前端学习者包括笔者是从 ES6 语

2021-02-10 00:39:21 119

原创 一篇文章图文并茂地带你轻松学完 JavaScript 闭包

JavaScript 闭包为了更好地理解 JavaScript 闭包,笔者将先从 JavaScript 执行上下文以及 JavaScript 作用域开始写起,如果读者对这方面已经了解了,可以直接跳过。1. 执行上下文简单来说,JavaScript 有三种代码运行环境,分别是:Global Code 是 JavaScript 代码开始运行的默认环境Function Code 是 JavaScript 函数运行的环境Eval Code 是 利用 eval 函数执行的代码环境执行上下文可以理解为

2021-02-08 16:08:33 111

原创 一篇文章图文并茂地带你轻松学完 JavaScript 设计模式(二)

JavaScript 设计模式(二)本篇文章是 JavaScript 设计模式的第二篇文章,如果没有看过我上篇文章的读者,可以先看完 上篇文章 后再看这篇文章,当然两篇文章并没有过多的依赖性。5. 代理模式代理模式提供了对目标对象的另一种访问机制。在 vue3 还没出来之前,我猜过可能会使用 proxy 取代 defineProperty ,结果也被验证了,毕竟 proxy 比 defineProperty 支持更多的拦截机制,可以对数组的方法进行拦截。const obj = {};const

2021-02-07 17:08:38 93

原创 一篇文章图文并茂地带你轻松学完 JavaScript 设计模式(一)

JavaScript 设计模式(一)本文需要读者至少拥有基础的 ES6 知识,包括 Proxy, Reflect 以及 Generator 函数等。至于这次为什么分了两篇文章,有损传统以及标题的正确性,是这样的。其实放在一篇文章里也可以,但是希望读者能够更加轻松点,文章太长也会导致陷入阅读疲倦中。因此希望读者理解。1. 工厂模式JavaScript 寄生模式就是一种 工厂模式,具体可以参考我的关于 JavaScript 继承 这篇文章,这里不再细谈寄生模式。工厂模式是用工厂方法代替 new 的

2021-02-07 17:00:58 118

原创 一篇文章图文并茂地带你轻松学完 JavaScript 事件循环机制(event loop)

JavaScript 事件循环机制 (event loop)本篇文章已经默认你有了基础的 ES6 和 javascript语法 知识。本篇文章比较细致,如果已经对同步异步,单线程等概念比较熟悉的读者可以直接阅读执行栈后面的内容了解 event loop 原理在了解 JavaScript 事件循环机制之前,得先了解同步与异步的概念同步与异步同步(Syncconst cal = () => { for (let i = 0; i < 1e8; i++) { /

2021-02-04 21:47:42 131

原创 一篇文章图文并茂地带你轻松学完 JavaScript 继承

JavaScript 继承在阅读本文章之前,已经默认你了解了基础的 JavaScript 语法知识,基础的 ES6 语法知识 。继承种类简单的继承种类可以分为构造函数继承原型链继承class继承寄生继承其中 class 继承是 ES6 后提供的一种语法糖,方便其他面向对象语言的程序员更好的接受 JavaScript 中的继承,本质上还是原型链继承。1. 构造函数继承function Person() { this.name = "name"; this.eat = f

2021-02-04 13:59:58 209 3

原创 一篇文章图文并茂地带你轻松学完 JavaScript 原型和原型链

JavaScript 原型和原型链在阅读本文章之前,已经默认你了解了基础的 JavaScript 语法知识,基础的 ES6 语法知识 。本篇文章旨在为 JavaScript继承 打下基础原型在 JavaScript 里任何一个函数都有一个 prototype 属性,这个属性称之为原型function Person() { this.name = "name";}console.log(Person.prototype)而 Person.prototype 实际上是一个包含 co

2021-02-03 23:25:07 141

原创 nodejs First Follow Select集合 算法分析和代码

LL1前言LL1是编译原理自上至下分析方法的一种,是其他分析方法的基础。本篇文章将通过一个例子附带代码讲述整个过程。读者一定要喜欢哦。文法数据结构const grammar = { S: [["M", "H"], ["a"]], H: [["L", "S", "o"], [EMPTY]], K: [["d", "M", "L"], [EMPTY]], L: [["e", "H", "f"]], M: [["K"], ["b", "L", "M"]],};上述的数据结构表示的

2021-04-22 21:00:55 360

原创 C# 数据库

数据库ADO.NET主要特点使用数据命令执行数据库交互使用数据集缓存数据数据保持为XML通过架构定义数据结构模型结构Connection表示个与数据源的物理连接DataAdapterConnection与DataSet的桥梁,管理四个Command对象来处理后端数据集和数据源的通信CommandSQL命令的载体DataReader从数据源中或许仅向前的只读的数据流DataSet数据集中的数据可能来自多个数据源,支持外键和唯一约束连接对象的创建st

2021-01-04 18:07:47 1701

原创 C# 多线程

多线程线程的建立与启动void fun() { // .. 执行耗时操作}var start = new ThreadStart(fun); // 创建线程入口var thread = new Thread(start); // 创建线程thread.Start();线程的常用方法方法作用Start启动线程,分配给线程除了CPU之外的所有系统资源,并执行各种安全检查。调用后线程处于Unstarted状态Join当前线程阻塞直到调用这个方法的线程执行完毕

2021-01-04 18:07:15 130

原创 C# 流

流文件流FileStream 构造方法public FileStream(string path, FileMode mode);public FileStream(string path, FileMode mode, FileAccess access);// path => 文件的路径/* mode => { Open, OpenOrCreate}*//* access => { Read, Write, ReadWrite}*/fs.Seek(

2021-01-04 18:06:45 96

原创 C# 类和对象

类和对象基本类修饰符对于类或者方法,下列修饰符访问性通用访问修饰符同 类同程序集子类同程序集 非子类不同程序集子类不同程序集非子类public√√√√√internal√√√protected√√√private√protected internal√√√√观察可得,protected只能用于子类继承,internal用于同程序集继承,public都可以继承,private都不能继承构造函

2021-01-04 18:05:34 154

原创 C# 基本语法

基本语法数组一维数组int[] a = new int[3];for (int i = 0; i < a.Length; i++) { a[i] = i + 1;}/**需要注意 a.Length 属性值为大写*/规则二维数组int [,] b = new int[3, 4];for(int i = 0; i < b.GetLength(0); i++) { for(int j = 0; j < b.GetLength(1); j++) {

2021-01-04 18:05:01 239

原创 C#概述

概述CLR概念和功能CLR是一套完整的,高级的虚拟机,用来支持不同的编程语言,并支持它们之间互相操作可以管理内存,易于设计组件和应用程序,可以跨语言互动JIT编译器,一次编译,就可以运行在任何支持运行库的任何CPU和操作系统上C#优势和特点类型安全,简单,是衍生出来的面向对象的编程语言具备高生产率和C++的行动力适合于Windows平台C#开发应用程序的步骤编写代码代码编译为 MSIL, 存储在装配件中JIT编译器将MSIL编译为本机代码在托管的CLR环境下运行本机代码

2021-01-04 18:04:22 111

原创 DOM接口技术

DOM接口技术DOM概述DOM是什么Document Object Model 文档对象模型DOM是一个与平台无关,语言无关的应用程序接口DOM是W3C组织定义并公布的一个规范DOM作用提供一个统一的XML数据接口应用DOM,可以动态创建文档,遍历文档,添加修改删除文档中的内容DOM接口规范提供了一种编写XML代码的方法DOM的结构DOM把文档表示为节点(Node)对象树节点对象表示文档中XML元素,也代表文档内其他所有内容(比如文本根元素,处理指令,注释文档类型,

2020-12-30 00:28:45 379

原创 XLink和XPointer技术

XLink和XPointer技术XLink的概念HTML链接跳转页面<a href="www.baidu.com">这是一个链接</a>页内定位<a href="#course">点击我去course</a>HTML链接缺点HTML链接只允许一个方向浏览不能精确定位外部资源内部元素的位置(明明可以??<a href="www.baidu.com#course">链接到百度的course</a>H

2020-12-30 00:27:29 1251

原创 XSL转换XML

XSL转换XMLXSL概述XSL(Extensible Stylesheet Language)是可扩展样式表语言。包含XSLTXPATHXSL什么是XSLT?XSLT => (Extensible Stylesheet Language Transformations)XSLT是XSL中最重要的部分XSLT可以将XML文档转化为另外一种XML文档XSLT可以使用XPath在XML文档中进行导航XPath是一个W3C标准XSL的意义将文档内容和表现形式分离在不同

2020-12-30 00:27:03 1080

原创 CSS转换XML

CSS转换XML样式表概述CSS简介CSS(Cascading Style Sheets,层叠式样式表)可以对XML输出样式进行控制,设置字体,页边距以及排列对齐方式等。CSS优势内容与表现分离可以支持多种设备减少网页代码量,提高浏览速度基本语法selector { property: value}body { color: red;}与XML结合外部样式表<?xml version="1.0" encoding="utf-8" ?><?xm

2020-12-30 00:25:57 285

原创 XML Schema

XML Schema什么是XML SchemaXML Schema是用于定义XML文档的结构和内容的文档,作用和DTD文档一样。XML Schema的作用验证正确性,可以验证数据的格式是否正确以及是否超出值的范围验证所有必须的信息是否存在添加默认值和固定值XML Schema VS DTDXML模式使用的是一种类XML语言Schema支持丰富的数据类型Schema支持命名空间机制XML Schema有两种模型,一种是Microsoft开发的Microsoft XM

2020-12-30 00:25:27 272

原创 DTD的基本概念

DTD的基本概念DTD概述DTD基本概念DTD是 Document Type Definition 文档类型定义的缩写。XML是用来描述标记语言的语言,可以由DTD定义结构,包括标记,属性和实体以及这些内容的相互关系DTD基本结构分为外部DTD和内部DTD内部DTD<?xml version="1.0" standalone="yes" ?><!DOCTYPE DOCUMENT [<!ELEMENT DOCUMENT (TITLE)><!ELEM

2020-12-30 00:24:51 2261

原创 XML基本语法

XML基本语法XML的语法结构<? xml version="1.0" ?> <!-- XML声明 --><!-- message为文档根元素 language为属性 --><message language="English"> <header> <date></date> <!-- date为空元素 --> </header></message>X

2020-12-30 00:24:19 188

原创 XML

XML为了解决HTML的不足,W3C发布了可扩展标记语言XMLHTML与XML的区别HTML文档主要包含显示标记,主要为了浏览,有自己定义的一套标记集XML文档可定义自己的标记集,定义语法和语义检查,XML文档将数据与显示格式分离。...

2020-12-30 00:23:46 62

原创 Java database主要知识提取

数据库JDBC要通过java程序访问数据库的内容,必须使用数据库访问接口一组类/接口,完成数据库连接、处理查询请求,处理返回结果等工作JDBC简介JDBC (Java Database Connection) 由一组用java语言编写的类和接口组成,JDBC为使用数据库机器工具的开发人员提供了标准的API,使得可以用这些API编写数据库应用程序。JDBC 封装了与数据库服务器通信的细节,作用大概为以下三个方面建立与数据库的连接向数据库发起查询请求处理数据库返回结果

2020-08-07 14:07:53 755

原创 Java net主要知识提取

网络编程Java提供了大量内置的网络操作功能,包含于java.net包中通过这个包提供的类和接口,可以实现基于“流”的通信,或者基于“包”的通信URLURL统一资源定位符(Uniform Resource Locator) 的简称,URL表示Internet上某一资源的地址,通过URL,可以访问Internet浏览器通过解析给定的URL就可以在网络上查找相应的文件和其他资源构造示例URL url1 = new URL("https://www.baidu.com");URL base =

2020-08-07 11:55:39 153

原创 Java Thread主要知识提取

Thread程序、进程和线程程序: 对数据描述与操作代码的集合,应用程序执行的脚本,以文件的形式存储在磁盘进程是一个程序在其自身的地址空间中的一次执行活动。一个程序的运行是从一个进程创建、运行到消亡的过程进程是资源申请、调度和独立运行单位,因此它使用系统中的运行资源,是操作系统分配资源的基本单位同一个程序可以被加载到系统的不同内存区域分别执行,形成不同的进程线程是进程中一个单一的连续控制流程一个进程中可以包含多个线程,每个进程至少包含一个线程,所以会自动创建一个线

2020-08-06 21:01:24 193

原创 Java Swing 主要知识提取

GUIGUI 工具集(了解)AWT本地平台捆绑,依靠本地系统决定组件外观和功能,重量级组件SWING大多Swing组件不依赖本地窗口部件们可以在每个平台实现每个窗口部件。缺省的情况下采用本地平台的显示外观不依赖于底层平台的Swing组件,称为轻量级组件SWT吸收了AWT 和 Swing实现的最好部分,保证了与本地窗口部件相当的外观和响应度区别AWT、SWT依赖底层平台,不同操作系统显示效果不一样Swing 基于 AWT 架构之上,保持了平台独立的特点AWT

2020-08-06 16:20:28 418

原创 计算机网络第七版谢希仁 第一章复习

2020-04-27 20:52:16 164

原创 对我来说很难的dp UVA1625

其实dp可能本身并不难,主要是要找到状态转移方程这个是一个让我引发深思的dp两个字符串,两个,两个,什么东西都是两个,貌似两个,然后有先后拿的顺序就可以dp这似乎是一个规律,而且数据规模往往在 n^2可以解决的情况比如 1e3 ~ 5e3这个数据量话不多说看一下这道题的描述描述很简单就是两个字符串给你,然后你可以从第一个字符串和第二个字符串的头拿字母,然后凑成一个新的字符串然后一个字...

2020-01-25 18:06:19 150

原创 借一道题理解dp UVA11584

经常会出现看到一道题,不知道是dp,或者不知道怎么dp,知道dp了又不知道怎么初始化的问题。借这道题。把dp深入理解一下题目:把一个字符串分成尽可能少的回文串,问分成的最少的回文串数量为多少。例如:aaadbccb 可以分成三个回文串 aaa, d, bccb这是能分成的最少回文串的数量。为什么会想到dp?是否有明确的状态转移方程?这道题有一个状态转移方程如果令dp[i] 为...

2020-01-23 16:07:59 143

原创 基础动态规划问题之LCS和LIS

LCS:longest common sequence 即 最长公共子序列例如1 3 4 5 61 4 5 6 2最长公共子序列就是 1 4 5 6 即两个序列从左到右删除若干元素能得到的最长相同子序列动态规划思想从后往前设 dp(i, j) 表示第一个数字在i位置,第二个数字在j位置听不懂,没关系,我们模拟这个过程一开始由于两个序列都是长度为5因此从dp(5, 5)开始并...

2020-01-08 13:43:19 229

原创 前端小白的第一个H5项目——福大助手年度总结报告2020的背后

本次项目作为福大助手的第一个H5项目,当交给我这个B届的小白的时候,我感受到了责任的重大,这个项目不得不做好,但又没那么可能做好,原因是之前我没有vue的项目经验,只是学习vue的时候做了一个类似去哪儿网的一个界面以下需要反思的问题:卡顿安卓端卡顿,ios表现良好,在查询的时候说是CSS3动画在ios和安卓上优化不一样,ios优化更好,于是查询了如何优化CSS3动画,首先要开启硬件加...

2020-01-06 15:41:31 859

原创 分组背包的三个问题 HDU 3535

有N件物品和一个容量为V的背包。第i件物品的费用是w[i],价值是v[i]。这些物品被划分为若干组,每组中的物品互相冲突,最多选一件。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。这是分组背包的第一类问题至多只能选一件所以状态转移方程为所以对当前组的dp全部设为之前的状态值for(int j = 0; j <= V; j++) { dp[k][j...

2019-12-24 18:16:13 161

原创 多重背包的应用问题 HDU 1059

Marsha和Bill拥有一系列大理石。他们希望将藏品分开,以使两者都享有相同的份额。如果所有的大理石都具有相同的价值,这将很容易,因为那样他们就可以将收藏品分成两半。但不幸的是,有些大理石比其他大理石更大或更漂亮。因此,玛莎(Marsha)和比尔(Bill)首先为每个大理石分配一个值,即一个介于1到6之间的自然数。现在,他们希望对大理石进行分割,以便使每个大理石都具有相同的总价值。不幸的是,...

2019-12-24 15:52:43 203

原创 完全背包问题的优化 Luogu 1853

题目背景约翰先生获得了一大笔遗产,他暂时还用不上这一笔钱,他决定进行投资以获得更大的效益。银行工作人员向他提供了多种债券,每一种债券都能在固定的投资后,提供稳定的年利息。当然,每一种债券的投资额是不同的,一般来说,投资越大,收益也越大,而且,每一年还可以根据资金总额的增加,更换收益更大的债券。题目描述例如:有如下两种不同的债券:①投资额4000,年利息4000,年利息400;②投资额300...

2019-12-23 23:42:25 193

原创 01背包带顺序问题 HDU 3466

最近,iSea去了一个古老的国家。这么长时间以来,它是世界上最富有和最强大的王国。结果,即使这个国家不再富裕,这个国家的人民仍然感到非常自豪。商家是最典型的商家,每个商家仅售出一件商品,价格为Pi,但如果您的钱少于Qi,他们会拒绝与您进行交易,并且iSea评估每件商品的值为Vi。如果他有M个货币单位,那么iSea可以获得的最高价值是多少?输入中有几个测试用例。每个测试用例均以两个整数N,...

2019-12-23 18:12:53 404

空空如也

空空如也

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

TA关注的人

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