自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于js的class类中我们应该明白的事情

类理论# 系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录类理论一、类理论?二、"类"设计模式“javaScript”中的类一、类理论?类、继承描述了一种代码的组织结构形式 ————一种在软件中对真实世界中问题领域的建模方法所有的字符串都是String类的一个实例,其实在这里我有一个疑惑我们可以知道 在原型链中 最顶层的原

2021-04-26 08:47:43 363

原创 快速排序

快速排序第一种:阮一峰思路快排思路1.找基数(一般是以中间项为基数)2.遍历数组,小于基准的放在left,大于基准的放在right3.递归function fn(arr){ //找基数 if(arr.length<=1) return arr; let num=Math.floor(arr.length/2); let onum=arr.splice(num,1)[0];//删除基数 //定义数组 let left=[]; let right=[]; for(let i=0

2021-04-15 17:03:14 121

原创 冒泡排序

冒泡排序思想:每次比较两个相邻的元素,如果他们的顺序错误就把他们交换过来,每次排序只能确定一个值的位置时间复杂度为O(N^2) function fn() { let arr = [11, 34, 23, 98, 2, 23, 45]; for (let i = 0; i < arr.length; i++) { for (let j = 0; j < arr.length - i; j++) { if (arr[j] < arr[j

2021-04-15 17:02:36 99

原创 桶排序

桶排序题目:将a,b,c,d,e五个同学的分数(满分为10分) 从大到小排序思想:申请一个大小为11的数组a[11] ,初始化为0 (js不用刻意定义长度)处理每个人的分数 例如第一个人的分数是五分,我们就将相对应的a[5]的值在原来的基础上加1然后将其从后至前将不为0的数组项打印出来代码: function fn(a, b, c, d, e) { let arr = []; for (let i = 0; i < 11; i++) { arr.push

2021-04-15 17:02:06 74

原创 696.计数二进制子串

696.计数二进制子串题目描述给定一个字符串 s,计算具有相同数量 0 和 1 的非空(连续)子字符串的数量,并且这些子字符串中的所有 0 和所有 1 都是连续的。重复出现的子串要计算它们出现的次数。示例 1 :输入: “00110011”输出: 6解释: 有6个子串具有相同数量的连续1和0:“0011”,“01”,“1100”,“10”,“0011” 和 “01”。请注意,一些重复出现的子串要计算它们出现的次数。另外,“00110011”不是有效的子串,因为所有的0(和1)没有组合在一起

2021-04-15 17:01:13 75

原创 577,反转字符串中的单词

577,反转字符串中的单词题目描述给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例:输入:"Let's take LeetCode contest"输出:"s'teL ekat edoCteeL tsetnoc"提示:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。题解1var reverseWords = function(s) { //先分析思路 /* 先用空格将其分开,这时候是数组

2021-04-15 17:00:09 66

原创 344.反转字符串

344.反转字符串题目描述编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1:输入:[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]示例 2:输入:[“H”,“a”,“n”,“n”,“a”,“h”]输出:[“h”,“a”,“n”,“n”,

2021-04-12 08:26:18 83

原创 前端性能优化

文章目录前言一、清理html恰当放置css恰当放置js二、优化css性能减少多余的css文件使用link而不使用@import三、减少外部http请求四,压缩css,js,html五, 使用预先获取预先获取(Predictive Fetch)模式的概念很简单,实现却不容易:Ajax应用程序必须猜测用户下一步要做什么,然后获取相应的数据。使用cdn和缓存提高速度总结前言从今天开始我将陆续在博客上整理前端面试题前端性能优化一、清理html恰当放置css如果将css样式表放在html后面的话,页.

2021-04-09 09:16:21 66

原创 柯里化与反柯里化

什么是柯里化:维基百科上说道:柯里化,英语:Currying(果然是满满的英译中的既视感),是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。比如说来举个例子:这是普通函数,求和。将所有的参数都置放在形参中。但是如果需求增加,我想求三个数的值,这时候很明显这个函数已经不满足实际需求,因为我们不可能在去重写函数function sum(x,y){ return x+y; }}``sum(1,2);//3柯

2021-04-09 08:19:04 120

原创 vue3.0引入elementui报错Uncaught TypeError: Cannot read property ‘prototype‘ of undefined

所以问题就出在实例对象不一致,官网上的实例对象是vue/cli3.0版本创建的 Vue 对象而最新版本的vue/cli是4.5.6,创建的实例对象是createApp 实例对象不一致,当然引入不进去了

2021-03-31 10:43:42 1864

原创 父子组件之间的传值

父子组件之间的传值1.父组件给子组件传值子组件写法注意:子组件用props接受从父组件传过来的属性<template> <div> <p>{{message}}</p> </div></template><script> export default{ props:['message'] }</script>父组件写法:注意:父组件绑定一个动态属性<templat

2021-03-26 16:25:43 144

原创 浏览器存储

浏览器存储随着Web应用程序的出现,直接在客户端存储用户信息的需求也随之出现。与特定用户相关的信息应该保存在用户的机器上。无论是登录信息,个人偏好,还是其他数据,Web应用程序都需要有办法把它们保存在客户端。对于该问题的第一个解决方案就是使用到了cookie,cookie由网景公司发明,由一份名为Persistent Client State:HTTP Cookies的规范定义,今天,cooike只是在客户端的存储数据的一个选项。一.cookie1.cookie的来源Cookie 的本职工作并非本

2021-03-14 16:50:49 155

原创 vue生命周期

2020-10-14 10:05:49 67

原创 26. 删除排序数组中的重复项

26. 删除排序数组中的重复项给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。示例 2:给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应该返

2020-10-14 09:50:12 104

原创 vue脚手架的简单使用

做项目主要在src中Vue中的导入:import xxx from "./xx.vue"后缀可以省略。创建脚手架的过程中,按ctrl +c 可以退出当前安装。<style lang=”less”> 用less语法<style scoped lang=”less”> 这个style样式只应用于当前子组件Npm run serve 启动你的项目Npm run build 将你的项目打包...

2020-10-13 17:58:16 148

原创 脚手架的安装

脚手架npm i @vue/cli -gVUE创建我的项目检测脚手架是否安装成功vue -V;(大写V)可以进行换源操作:npm config set registry https://registry.npm.taobao.orgvue create 项目名 创建项目文件夹创建之后选择最后一个然后进入这个界面:按空格切换选择,按enter键 进入下一步第一次创建可以只勾选babel或者加上CSS Pre-processors选择你的项目名字,然后创建。到此为

2020-10-13 11:40:09 333

原创 mongodb数据库和可视化工具compass的下载安装

mongodb的下载官网点击这里下载步骤:然后打开它:安装并且一直点击下一步,直到这个界面出现,取消勾选(这是可视化数据库,在这里下载他会访问国外的网站下载并且有可能会在这里卡顿,所以最后会进行单独的下载)检测安装完成之后检测是否安装成功在你的cmd或者powershall中输入命令 mongo问题在这里有可能会出现个小问题:mongodb 不是内部或外部命令 也不是可运行的程序 或批处理文件这个时候可以选择修改环境变量复制你的数据库路径,如果你没有进行修改的话,基本

2020-08-15 18:06:52 1916

原创 express静态文件

express静态文件当页面要展现图片的时候,需要每一个图片用路由去监听才会在页面上得到效果,例如index.jsconst express = require("express");const path = require("path");let app = express();app.listen(4567);app.get("/",(req,res)=>{ res.sendFile(path.join(__dirname,"./public/index.html"));

2020-08-15 10:43:53 697

原创 ejs01

ejs的模板引擎include首先呢,我们现在所做的是一个ejs模板引擎,在网站中除了中间数据,首位部分都相同,这时候首尾复制粘贴又有一点麻烦。index.jsconst express =require("express");const app=express();app.listen(7878);app.set("view engine","ejs");app.get("/teacher",(req,res)=>{ let data=[ {name: "阿飞

2020-08-14 22:48:38 120

原创 ejs00

ejs资源文档: https://ejs.bootcss.com/安装利用 NPM 安装 EJS 很简单。$ npm i ejs -S调用调用模板引擎ejsapp.set("view engine","ejs");还有pug模板引擎使用render用于返回一个模板引擎文件参数一:参数可以是一个绝对路径,或者是“相对路径名”–render会自动去当前目录找views文件夹参数二:代表渲染模板的时候带过去的数据必须是一个基础的对象,不可以是数组或者字符串等在调用的模板引擎中会自动

2020-08-14 22:40:04 148

原创 node.js的express框架

express()express()用来创建一个Express的程序。express()方法是***express***模块导出的顶层方法。var express = require('express');var app = express();中间件http://expressjs.com/en/guide/using-middleware.html (参考文献)express是一个路由和中间件Web框架,其自身的功能很少:Express应用程序本质上是一系列中间件函数调用。中间

2020-08-05 21:43:36 201

原创 npm

npmNode Package ManagerNPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:允许用户从NPM服务器下载别人编写的第三方包到本地使用。允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。由于可以通过输入“ npm -v”来测试是否成功安装。命令如下,出现版本提示表示安装成功:$ npm -v2.3.0npm initnpm

2020-07-19 00:29:51 110

原创 03 node

1.模块的互不影响02.js文件exports.name="小庄";exports.age=18;03.js文件let a=require("./02");a.sex="女";console.log(a);//{ name: '小庄', age: 18, sex: '女' }2.关于重复引入相同的模块05.jsmodule.exports={ name:"小庄", age:18}06.jslet a=require("./05");a.sex="woman

2020-07-16 20:44:17 95

原创 node.js01

node.js 复习Promise async处理前端发送的请求读写文件和数据库(mongodb)的交互vue:前端框架 渲染页面数据第一步:​ node.js的安装下载界面下一步下一步不用其他操作。按住shift点击鼠标右键,选择打开powershell窗口。清屏:cls clear(黑窗口不支持) Ctrl+L(黑窗口不支持)复习Promise asyncPromise// 回调代码的结构变得更好看 new Promise((resolve,reject)

2020-07-13 01:06:23 76

原创 node.js02

1.node.js是什么简单的说 Node.js 就是运行在服务端的 JavaScript。Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。后端语言(代码 js代码 底层是c++)异步编程2.终端常用的命令cd 进入目录(按tap可以自动补全)cd… 返回上一层目录换盘直接盘符: (D:

2020-07-13 01:04:52 85

原创 canvas

canvas在渲染复杂的动效,把数据可视化图形显示,游戏场景等需求,都会用canvas技术,比dom操作性能更高特点:1.h5的新增图形标签,通过提供的javaScript函数绘制各种图表或利用算法是吸纳非常华丽的动效2,在以前是用flash实现,但不能和js交互3,适合动态图形绘制缺点是位图,缩放会模糊。svg意为可缩放矢量图形(Scalable Vector Graphics)。SVG 指可伸缩矢量图形 (Scalable Vector Graphics)SVG 用来定义用于

2020-07-11 20:03:56 384

原创 深拷贝和浅拷贝

深拷贝和浅拷贝众所周知,“=”对于对象来说是引用关系。var obj1={ name:"小庄"};var obj2=obj1;obj1.name="huahua";console.log(obj2);//此时obj2会随着obj1的改变而改变。这种拷贝被称为浅拷贝;此时问题来了,假如我不想让他俩相互之间引用,只是存在最开始的赋值问题,那么该如何解决这时候把这种解决办法成为深...

2020-03-11 23:38:03 58

原创 同源策略和jsonp

参考资源:https://www.cnblogs.com/rain-chenwei/p/9520240.html同源策略: http://localhost:80/01.html http://localhost:80/02.html 协议 http: ...

2020-03-11 23:35:51 141

原创 Servlet

Servlet什么是server?Servlet是java web开发的基石,与平台无关的服务器组件,它是运行在Servlet容器/web应用服务器/Tomcat,负责与客户端进行通信servlet的功能:1,创建并返回基于客户请求的动态HTML页面2,与数据库进行通信``package com.southwind.servlet;import javax.servlet.Ser...

2020-02-25 20:30:34 69

原创 jsp

jspjsp本质就是一个Servlet,JSP主要是负责与用户交互,将最终的界面呈现给用户,HTML+JS+CSS+JAVA的混合文件。当服务器接收到一个后缀是jsp的请求时, 将该请求交给JSp引擎去处理,每一个JSP页面第一次被访问的时候,jsp引擎会将他翻译成一个Servlet文件,由web容器调用Servlet完成响应。单纯从开发的角度来看,jsp就是在Html中嵌入JAVA程序具...

2020-02-25 20:29:21 105

原创 Servlet的层次结构

Servlet的层次结构Servlet–>GenericServlet–>HttpServletHTTP请求有很多种类型,常用的有四种GET 读取POST 保存PUT 修改DELETE 删除GenerServlet实现Servlet接口,同时为他的子类屏蔽了不常用的方法,子类只需要重写Service方法即可。HttpServlet继承GenerServlet,根...

2020-02-25 20:26:55 683

原创 tomcat和idea下载安装与关联

tomcathttp://tomcat.apache.org/下载安装并且解压缩bin:存放各个平台下启动和停止tomcat服务的脚本文件conf:存放各种tomcat服务器的配置文件lib:存放tomcat服务器所需要的jarlogs:存放tomcat服务运行的日志temp:tomcat运行时的临时文件(节省内存空间)webapps:存放允许客户端访问的资源(java程...

2020-02-17 11:49:53 882

原创 面向对象中的原型和原型链

面向对象对象: 无序属性得集合,其属性可以包含基本类值,对象或者函数。对象的生成方式有两种:1.字面量var obj={};//字面量在这里要注意,这种方式和下面一种方式的本质是相同的,其相当于var obj =new Object;2.构造函数var obj =new Object;构造函数的特点:1,书写上为了区分普通的函数首字母要大写2,使用的是this,不需要返回...

2020-01-30 09:45:11 163

原创 问题 F: 开灯问题(第二讲)c语言

问题 F: 开灯问题(第二讲)题目描述输入:输出:样例输入:样例输出:思想方法:代码如下:感谢观看!欢迎探讨问题。题目描述有n盏灯,编号为1~n,第1个人把所有灯打开,第2个人按下所有编号为2的倍数的开关(这些灯将被关掉),第3个人按下所有编号为3的倍数的开关(其中关掉的灯被打开,开着灯将被关闭),依此类推。一共有k个人,问最后有哪些灯开着?输入:n和k,输出开着的灯编号。k≤n≤1000...

2019-12-10 20:42:24 543

空空如也

空空如也

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

TA关注的人

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