自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 DOM阻塞

浏览器缓存 :cache-control 的max-age设置缓存的时间框架区域采用的是服务器端渲染,中间页面采用的是vue的单页面应用,客户端渲染,主要框架采用服务器端渲染,速度快,有更好的体验。1.html下载完成后解析成DOM,2.css下载完解析成CSSOM(css object model)3.两者结合生成 render tree4.生成布局5.在屏幕上绘制css不会阻塞dom的解析,css会阻塞渲染生成render treejs会阻塞dom的解析,js下载和执行的时候会停止dom

2021-06-30 16:35:36 127

原创 优惠券组合到0元/星际穿越美团笔试

let num = 65let type = 4let money = [50,30,20,5]function change(num,type,money){ let res = [] res[0] = 0 for(let i=1;i<=num;i++){ let arr = [] for(let j=0;j<money.length;j++){ if(i>=money[j]){ .

2021-06-12 15:06:53 138

原创 个人博客项目

数据库的设计需要登录才能发布删除修改文章,设计一个作者的数据表,包含作者ID,作者姓名,作者密码,密码是通过md5加密后储存在数据库的数据库文章数据表的设计包括文章ID,文章标题,文章内容,作者,发布的时间...

2021-06-10 10:57:00 127 1

原创 动态规划(最少硬币找零、01背包问题)

最少硬币找零问题function change(coins,total){ let m = coins.length; let n = total let res = new Array(m+1).fill(1).map(()=>(new Array(n+1).fill(1))) for(let i=0;i<=n;i++){ res[0][i]= Infinity //为动态规划创造初始条件 } for(let i=1;i<

2021-05-29 15:44:44 132

原创 懒加载

懒加载:用到时再加载,打包应用时,js包会变得非常大,一次性请求这个页面影响页面加载,把不同路由对应的组件分割成不同的代码块,路由被访问时再加载对应的组件,可以防止用户界面出现长时间空白懒加载非懒加载...

2021-05-16 22:28:25 63

原创 前端路由

后端路由:每个url向服务器请求数据,后端渲染好网页发送给前端;前后端分离:后端提供数据,前端通过api渲染数据前端路由:单页面富应用,每个url和每个网页的映射关系,改变url不会向服务器请求资源。location.hash改变hash来改变url不会刷新网页history修改urlhistory.pushState({},’’,‘about’)history.replaceState({},’’,‘about’)history.go()history.back()histor

2021-05-16 11:42:34 96 1

原创 vue-cli

安装npm Install -g @vue/cli 脚手架3 vue --version查看版本想要按照脚手架2初始化项目:拉取vuecli2.x; npm install @vue/cli-init -g脚手架2创建项目:vue init webpack my-project脚手架3创建项目:vue create my-projectESlint:规范代码文件目录static文件下的文件打包后会原封不动放到dist文件夹中babel用来es6转es5如果安装的是babel-pr

2021-05-10 18:22:36 67

原创 CommonJS和ES6模块化

Commonjs 模块是个对象,运行时才能完成模块的加载,只有在运行的时候才能得到这个对象;ES6模块不是对象,编译时就可以确定模块之间的依赖关系;在编译的时候就可以完成模块的加载ES6模块的要点export和import可以出现在模块顶层的任何地方,但是不能出现在块级作用域,出现在块级作用域就不可以静态优化;export输出的一个接口,不可以是一个变量,export f(){}...

2021-05-09 10:46:04 79

原创 webpack使用

webpack.config.jsconst path = require('path')module.exports = { entry:'./src/a.js', //打包文件的入口 output:{ path:path.resolve(__dirname,'dist'), //动态获取路径,打包文件的出口 filename:'bundle.js' }}package.json "scripts": { "buil

2021-05-04 16:55:04 44

原创 promise的串行和并行

串行var p = function(){ return new Promise((resolve,reject)=>{ setTimeout(() => { console.log('1000'); resolve(); }, 1000); })}var p1 = function(){ return new Promise((resolve,reject)=>{

2021-03-28 22:55:14 298

原创 JS原生拖拽

<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>拖动</title> <style> #div1{ position: relative; width: 1000px; top:

2021-03-19 19:40:56 46

原创 JS中关于坐标的总结

MouseEventscreenX: 鼠标相对屏幕的水平位置screenYclientX:鼠标相对于程序窗口的位置clientYmovementX:与上一个mousemove事件之间的距离movementYoffsetX:鼠标与目标节点左侧padding外边缘的距离offsetY:PageX:鼠标位置和文档左侧距离PageY:文档上侧,包含不可见的部分ElementElement.clientHeight:表示元素节点的css高度,包括padding,不包括border和margin

2021-03-19 16:49:03 396

原创 nodemon使用

配置nodemon,修改服务器文件,自动完成重新解析服务器文件并且启动服务器1.npm install nodemon -D2.修改package.json中的启动命令在当前文件下执行npm start即会启动app.js文件3.创建nodemon.json文件只有src下的js文件发生变化才会执行nodemon...

2021-03-12 14:37:26 115

原创 Event事件

事件传播顺序<div><p></p></div>window>document>html(document.documentElement)>body(document.body)>div>pdispatchEvent也是按照以上的顺序触发var ev = new Event( 'look', { 'bubbles': true, 'cancelable': false });documen

2021-03-09 16:34:11 59

原创 JS的继承方式

原型链继承 function Super(){ this.name = "lihua"; this.age = 12; this.like = [1,2,3,4]; this.show = function(){ console.log(this.name + this.age) }

2021-03-09 09:57:11 46

原创 ES5和ES6类与继承的区别联系

标题ECMAScript 的原生构造函数大致有下面这些:List itemBoolean()Number()String()Array()Date()Function()RegExp()Error()Object()ES5中无法继承原生构造函数原生构造函数会忽略apply方法传入的this,也就是说,原生构造函数的this无法绑定,导致拿不到内部属性。ES5 是先新建子类的实例对象this,再将父类的属性添加到子类上,由于父类的内部属性无法获取,导致无法继承原生的构造函数。ES

2021-02-11 17:19:52 167 1

原创 表格数据点击排序

点击表格表头,按照这一列的数据重新排列,点击一次降序,再点击升序,各列不会互相影响降序和升序的轮换。<!DOCTYPE html><html> <head> <meta charset='utf-8'> <title>html</title> <style> table{ width: 500px;

2021-02-08 12:18:40 392

原创 力扣234题,回文链表判定递归方法思路

const recursion = function(current){ if(current !=null){ if(!recursion(current.next)){ } //........//当前还不会执行以下的代码 } return true;}1.先利用!=null这个条件,把所有节点都添加到递归栈中if(current !=null){ if(!recursion(current.next)){.

2021-01-27 17:25:54 248

原创 防抖和节流

function debounce(fn, delay){ let timer = null; return function(){ let context = this; let args = arguments; clearTimeout(timer); timer = setTi.

2021-01-26 13:42:35 52

原创 MySQL教程

cmd管理员运行;转到D:\mysql\mysql-8.0.23-winx64\binnet start mysql启动服务(mysql不是关键字,是服务器名)mysql -u root -pm输入密码create database 数据库名use 数据库名create table 表名

2021-01-25 21:46:50 51

原创 回溯算法之迷宫老鼠

迷宫老鼠问题function ratInAMaze(maze){ const solution = []; for(let i=0;i<maze.length;i++){ solution[i] = []; for(let j=0;j<maze[i].length;j++){ solution[i][j] = 0; } } if(findPath(maze,0,0,solution) ===

2021-01-25 21:46:39 204

原创 promise链式调用

function asyn(n){ const promise = new Promise((resolve,reject)=>{ if(n>2){ setTimeout(() => { console.log(n--); resolve(n); }, 1000); }else{ setTimeout(() =&gt

2021-01-25 21:44:31 114

原创 回溯问题,leetcode39,40,46,47题归纳

46题利用used数组,一个数字不会在一个序列里边出现两次,不会出现[1,1,1];[1,1,2]这种情况var permute = function(nums) { const res =[]; const uesd = {}; var dfs = function(path){ if(path.length == nums.length){ res.push(path.slice()); return;

2021-01-20 22:34:19 89 1

原创 JavaScript面试题1

<script>function Foo() { getName = function () { console.log (1); }; return this;}Foo.getName = function () { console.log (2);};Foo.prototype.getName = function () { console.log (3);};var getName = function () { console.log (4);};functi

2021-01-12 13:58:55 65

原创 express的安装

npm install -g express-generator //需要全局安装 npm install express --save //在工作文件夹安装

2021-01-08 23:10:45 45

原创 object.create()和new()的区别

function A(){}var a = new A();var b = Object.create(a);//对象实例b的原型是实例对象a,b.__proto__ 是 a//Object.create(arg1,arg2)的//第一个参数是一个实例对象,第二个参数是一个对象console.log(Object.getPrototypeOf(b) === a) //true var d = new C() //new操作符后边是一个构造函数,console.log(Object.getPr

2021-01-08 16:38:00 261

原创 使用<input type=“submit“>和<a>提交数据

<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>tessss</title> </head> <body> <form action="./getData.php"> <input name="food" type="text"

2020-12-14 21:48:20 573 1

原创 vscode launch.json 文件配置

{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "type": "chrome", "request": "launch", "

2020-11-15 16:39:35 1824

原创 双指针外观数列

var countAndSay = function(n) { if(n==1){ return "1"; } return explain(countAndSay(n-1));};function explain(num){ var str = num.toString(); let pre =0,end =0; let i = 0; let key =[];let value =[]; while(end<str

2020-11-12 16:51:39 65

原创 双指针寻找小字符串在长字符串出现的首次索引值

双指针寻找小字符串在长字符串出现的首次索引值var strStr = function(haystack, needle) { var L = needle.length; var n = haystack.length; if(L === 0) return 0; var pn = 0; while(pn < n-L+1){ while(pn < n-L+1 && haystack[pn] != needle[0]) +

2020-11-12 11:50:30 84

原创 PhpStorm环境配置

File ->setting->Languages and Frameworks->php->CLI interpreter 右边的三个小点->applay->ok

2020-06-18 10:00:24 323

原创 2020-06-18

wamp 改 mysql 密码use mysql #Database changedALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘要改的密码’;flush privilegesquit

2020-06-18 08:57:27 149

原创 数据结构 2

循环队列class CircularQueue { constructor(size) { this.queue = []; this.read = 0; this.write = 0; this.max = size - 1; while (size > 0) { this.queue.push(null); size--; } } print() { return this

2020-05-12 19:05:06 91

原创 优先队列

在进队列的时候按照优先级进行插入排序 ,也可以全部进队后,在出队之前进行排序。 function PriorityQueue () { this.collection = []; this.enqueue = function(str,num){ var temp = [str,num]; if(this.isEmpty()){ this.collection.push(temp); } else{ this

2020-05-11 19:32:33 83

原创 排序方法

冒泡排序比较两个相邻的元素,将值大的元素交换到右边,需要n-1趟排序,每趟需要n-i次,这种方式通过多次迭代数组来完成操作,不管是平均还是最坏的情况,都是具有二次时间复杂度。尽管这个方式简单,但是在实际应用中,大多数情况下不切实际的:时间复杂度过高。function bubbleSort(arr) { for(var i=0;i<arr.length-1;i++){ ...

2020-05-06 13:31:29 110

原创 继承笔记

Object.create(obj)创建了一个新对象,并指定了obj作为新对象的原型。function Animal() { }Animal.prototype = { constructor: Animal, eat: function() { console.log("nom nom nom"); }};let duck = Object.create(Anima...

2020-05-02 10:37:15 80

原创 定时器

1. setTimeout()每隔100毫秒数字变化var counter=0 setTimeout(function f(){ counter++; document.getElementsByTagName('p')[0].innerHTML=counter; setTimeout(f,100); },100);<!...

2020-04-19 19:08:41 75

原创 JavaScript的对象原型和继承

对象的原型和继承问题JavaScript 对象可以从对象的原型(prototype)继承属性和方法,任何一个对象(除了Object.prototype的原型是null)具有原型,也可以作为其他对象的原型,称为原型链。Object.getPrototypeOf(object)可以返回参数对象的原型,顺着原型,原型的原型一级一级找,找不到该属性的话返回undefined。为什么? ...

2020-04-15 14:04:56 151

原创 登录窗口

登陆界面初级<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>ssdsd</title> <style> .back_ground{ width:5...

2020-04-12 14:12:37 1000

原创 外部文件导入

外部css导入放在<head>和</head>之间<link href="C:/Users/lll/Desktop/css01.css" rel="stylesheet" type="text/css">外部js导入<script src="C:/Users/lll/Desktop/js01.js"></script>...

2020-04-11 18:00:30 159

空空如也

空空如也

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

TA关注的人

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