自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 openlayers之ZXY转换为BBox

因为项目需要,需要将ZXY转换为BBox来获取瓦片,经过一番折腾,终于给实现了。网上关于它的资料也不是很多,所以做以下分享!首先要得到ZXY数据,就需要通过source的tileUrlFunction来获取let self = this;const TileLayer = new Tile({ source: new XYZ({ const proj3857 = new olProj.get('EPSG:3857'); const proj3857Extent = proj3857..

2020-12-03 17:05:48 1296 4

原创 在vue.config.js中配置plugin

因为项目需求,需要将ip地址单独配置成文件,打包后要单独在一个js文件中,网上有许多配置webpack的文章,但是独独没有【在vue.config.js中配置plugin】的相关文章,所以做如下分享const CopyWebpackPlugin = require("copy-webpack-plugin")const path = require("path")module.exports = { publicPath: "./", outputDir: "./server/di.

2020-08-06 16:18:29 11049 1

原创 antd-vue之table合并单元格

做项目需要一个合并单元格的功能,这样显示的更有条理,所以根据antd-v的文档自己琢磨出了以下方法:首先要知道antd-v里面可以合并单元格的属性是rowSpan,所以拿它开刀……然后……上代码吧!<template> <a-table :columns="columns" :data-source="data" bordered></a-table></template><script>const renderConten.

2020-07-28 14:48:32 6962 7

原创 使用reduce给数组去重

今天偶然发现reduce可以给数组去重,特意记录一下let arr=[1,2,3,4,5,6,4,3,2]let a=arr.reduce((result,item)=>{ if(result.indexOf(item)<0){ result.push(item) } return result},[])console.log(a)//结果:[1, 2, 3, 4, 5, 6]...

2020-07-28 14:30:32 303

原创 koa项目规范化之异常处理

作为前端的小伙伴,天天写前端样式也会略微的枯燥,萌生想接触后端知识的想法。这不最近一段时间在后端大佬的熏陶下,也对后端的规范化的开发思想略知一二,先用koa来分享一下规范化建设之中的项目错误处理以及日志的持久化。一个项目想要运行稳定:肯定会具备完善的错误处理机制以及日志记录功能。错误处理机制有利于我们在发现错误,排查和解决错误。日志的持久化则方便记载日志,另一方面也是防止宕机等事故销毁日志。错误捕捉:一般常用的错误处理方式是使用try catch,通过它可以保证线程的安全,但是许多地方可能也有不确.

2020-07-08 16:43:02 552

原创 Dockerfile,让docker运用到实际项目中的用于构建镜像的文本文件

Docker DockerfileDockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。使用 Dockerfile 定制镜像本文先只讲解关于dockerfile的构建流程下面定制一个nginx镜像在一个空目录下新建一个名为dockerfile的文件,并添加如下内容FROM nginxRUN echo '这是一个本地构建的nginx镜像' > /usr/share/nginx/html/index.htmlFROM和RUN指令的作用

2020-05-15 15:40:55 669

原创 docker的仓库如何管理

仓库(Repository)是集中存放镜像的地方。以下介绍一下 Docker Hub。当然不止 docker hub,只是远程的服务商不一样,操作都是一样的。目前 Docker 官方维护了一个公共仓库 Docker Hub。大部分需求都可以通过在 Docker Hub 中直接下载镜像来实现在 https://hub.docker.com 免费注册一个 Docker 账号。登录需要用户名和密码,登录成功后,可以从docker hub上面拉取自己账户的全部镜像。~ $ docker login.

2020-05-15 15:12:03 156

原创 docker容器的连接

容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过-p或者-p 参数来指定端口映射。如果不指定端口参数,会默认映射到0.0.0.0:32768->5000List item首先创建一个容器~ $ docker run -d -P training/webapp python app.py65940d44dde99638da57ff1c79ffad4d862771c84939efbf2ed75c69d6f13b99使用docker ps查看,可以看到容器端口5000绑.

2020-05-15 15:03:12 374

原创 用chrome开发者工具的memory选项,分析js代码某个函数的内存使用率

大多数的前端小白都可能不知道chrome开发者选项中的memory怎么用,经过一段时间的研究,我终于摸清了它的使用套路,好啦,咱开始操作吧~1.首先打开sources,点击需要调试的文件,找到相应的函数,在要测试的函数的一上一下添加两个断点。2.然后刷新一下,js运行到断点位置就会停下来,先触发第一个断点,然后打开memory选项卡,选择heap snapshot选项,然后点击左侧的小灰点,它就会记录当前函数执行前的内存状况3.继续点一下页面上的debugger按钮,让第二个断点触发,这时候在.

2020-05-14 12:10:44 3531

原创 Docker初体验之镜像使用

当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载。列出镜像列表使用 docker images 来列出本地主机上的镜像$ docker imagesREPOSITORY TAG IMAGE ID CREATED ...

2020-04-30 17:21:46 209

原创 Docker初体验之容器的使用

容器的使用获取镜像如果本地没有Ubuntu镜像,我们可以使用docker pull命令来载入Ubuntu镜像:$ docker pull ubuntu这样就会载入最新的Ubuntu镜像了启动容器以下命令使用ubuntu镜像启动一个容器,参数为以命令行模式进入该容器:$ docker run -it ubuntu /bin/bashroot@ad1bace56ed0:/# 参数...

2020-04-30 16:45:22 216

原创 Docker初体验之hello wrold

我相信经过一番折腾,小伙伴们都暗转好了Docker,并且也都设置了镜像加速,好了,现在开始实践Docker吧,先来个hello world压压惊!Docker允许你在容器内运行应用程序,使用docker run命令来在容器内运行一个应用程序,并且输出‘hello world’//使用docker run 命令开始运行你的容器内的程序XXXMacBook-Pro:~ XXX$ docker...

2020-04-30 15:02:13 140

原创 Docker架构设计

Docker架构docker包括三个基本概念:镜像,容器,仓库他们三者的关系:镜像:镜像相当于一个root文件系统,它承载着Docker的系统;容器:容器和镜像就像面向对象的语言中的类和实例一样,镜像是静态的定义,容器是镜像运行的实体。容器可以被创建、启动、停止、删除暂停等;仓库:仓库是一个代码的控制中心,用来保存镜像;Docker使用了客户端-服务器的架构模式,使用远程api创建...

2020-04-30 11:36:24 185

原创 Docker初体验

Docker是一个开源的应用容器,它可以为我们提供自动化的打包及部署功能,也可以实现虚拟化。它基于Go语言并遵循Apache2.0协议开源。容器完全使用沙箱机制,相互不会有接口,更重要的是容器的开销极低。docker的应用场景web应用自动化打包和发布自动化测试和持续集成、发布在服务型环境中部署和调整数据库或其他后台应用从头编译或者扩展现有的OpenShift 或 Cloud Foun...

2020-04-30 11:15:42 94

原创 JavaScript的ES6、ES7、ES8、ES9、ES10新特性

ES6、ES7、ES8、ES9、ES10新特性ES全称ECMAScript,ECMAScript是ECMA制定的标准化脚本语言。目前JavaScript使用的ECMAScript版本为ECMA-417。关于ECMA的最新资讯可以浏览 ECMA news查看。ES6新特性(2015)ES6的特性比较多,在这里列举几个常用的:类模块化箭头函数函数参数默认值模板字符串解构赋值延...

2020-04-12 17:25:33 6044 1

原创 js清除数组

arr.length=0和arr=[]不一样的,前者是保留原来的引用,后者是新建了内存空间的,如果在这之前执行arr2=arr;那两者的区别可大了。如果数组保存了10w个数字,或者10w个json对象。那执行arr.length=0,就会释放很多内存了。然后将数组null就会将堆中的数组通过垃圾回收机制回收的。arr.length=0和arr=null虽然目的都是释放内存,但是如果你之前有把...

2019-09-19 00:24:35 2165

原创 JavaScript 垃圾回收机制(GC)

JavaScript垃圾回收的机制很简单:找出不再使用的变量,然后释放掉其占用的内存,但是这个过程不是时时的,因为其开销比较大,所以垃圾回收器会按照固定的时间间隔周期性的执行。变量生命周期不再使用的变量也就是生命周期结束的变量,当然只可能是局部变量,全局变量的生命周期直至浏览器卸载页面才会结束。局部变量只在函数的执行过程中存在,而在这个过程中会为局部变量在栈或堆上分配相应的空间,以存储它们...

2019-09-19 00:16:25 510

转载 function(){}、var fun=function(){}和function fun(){}的区别

原文链接:http://www.cnblogs.com/FHC1994/p/10028652.html一、基本定义1.函数声明:使用function声明函数,并指定函数名。function fun() { // ...... }2.函数表达式:使用function声明函数,但未指定函数名,将匿名函数赋予一个变量。var fun = function() { // ...

2019-09-19 00:01:22 474

原创 JS中EventLoop事件循环机制的总结

什么是Event LoopJavaScript的事件分两种,宏任务(macro-task)和微任务(micro-task)宏任务:包括整体代码script,setTimeout,setInterval微任务:Promise.then(非new Promise),process.nextTick(node中)先来了解一下事件的执行顺序——先执行宏任务,然后执行微任务,任务有同步的任务...

2019-09-18 22:07:28 172

原创 vue的provide和inject的使用

本文主要介绍了vue当中的provide和inject的使用,现在分享给大家

2019-09-05 23:27:56 1920

原创 ES6中箭头函数中的this指向

箭头函数的this,指向和function定义的函数不同箭头函数this的定义是在函数定义的时候绑定的而不是在执行函数的时候绑定

2019-09-05 21:30:37 892 2

原创 服务端渲染与客户端渲染的区别

服务端渲染(SSR)与客户端渲染(BSR)都是数据渲染的主要的方式任何的WEB项目基本的需要就是将后端的数据库中的数据渲染到页面上客户端渲染前端利用ajax等数据交互手段获取服务端提供的数据之后,渲染到HTML页面方法:(ajax, jsonp, fetch) -&gt; 获取数据 -&gt; 文档碎片插入,拼接字符串,模板引擎客户端运行了页面之后才进行优点:灵活,...

2019-03-02 20:03:51 2259

原创 mysql与mongodb区别

MySQL是关系型数据库优势:在不同的引擎上有不同 的存储方式。查询语句是使用传统的sql语句,拥有较为成熟的体系,成熟度很高。开源数据库的份额在不断增加,mysql的份额页在持续增长。缺点:在海量数据处理的时候效率会显著变慢。Mongodb是非关系型数据库(nosql ),属于文档型数据库 文档是mongoDB中数据的基本单元,类似关系数据库的行,多个键值对有序地放置在一起...

2019-02-28 20:49:39 159

原创 Express路由规则

Express是基于Node.js的十分优秀的开发框架,本篇将介绍Express的基本用法及规则。express 封装了多种 http 请求方式,主要有get和post方法,app.all 可以获取所有请求方式,回调函数有两个参数分别是 req和 res,代表请求信息和响应信息。get过来的参数: querystring + cookiepost过来的参数: querystring...

2019-02-28 20:03:57 932

原创 substring和substr详解

substring和substr和slice相似,都是截取字符串的方法substring(str0,str1)表示从字符串的第几个截取到第几个,如果第一个参数写了,第二个参数没有写的话,那么代表着从第一个参数的索引开始截取到字符串的末尾。 参数值可以是正值,也可以是负值。但是和slice不同的是,slice中参数是负值,那么倒着开始数,而substring参数是负值的话,代表着往前数几位,它...

2018-12-31 19:49:02 2723

原创 数组和对象详细对比

arr=[ ]长这样的就叫做数组obj={ }长这样的就叫对象下面通过一个表格来详细了解一下数组和对象的一些特性数组对象数组有下标,并且是从零开始对象没有下标,他只是键值对的集合数组是根据位置下标来索引对象是根据关键索引数组无法使用这种点语法标识内容对象可以使用对象.关键词数组的length可以获取长度,也可以设置长度,仅用来统计下标的数量对象...

2018-12-31 16:46:57 925

原创 js中continue、break和return区别

很多人将continue、break和return混淆,不知道该怎么用才对,下面我简单讲述一下这三个语句的作用;return:它是用在一个函数中的,他可以跳出这个循环(return后面的语句将不再执行),然后返回一个值(仅一个),如果你想返回多个值,那么就要将多个值写到一个对象中,放回这个对象即可。return后面通常也可以写一个语句来返回语句的执行结果。continue:它是指在循环中跳出,...

2018-12-31 15:48:44 784

原创 浅谈js中的for循环和while循环:

-for循环:它的语法如下: for (语句 1; 语句 2; 语句 3) { 被执行的代码块 }语句 1 在循环(代码块)开始前执行语句 2 定义运行循环(代码块)的条件语句 3 在循环(代码块)已被执行之后执行通常我们将for循环用于循环遍历数组,来给循环的数组加上监听事件等还是很方便的。有了for循环,不需要一个一个的来加事件。-wh...

2018-12-31 14:38:58 3526

空空如也

空空如也

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

TA关注的人

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