- 博客(24)
- 收藏
- 关注
原创 Sunny-Ngrok内网穿透服务
1. 内网穿透服务 内网穿透服务无需注册备案域名可将本地电脑作为服务器接入外网访问 登录Sunny-Ngrok 开通隧道,有收费和免费 开通后下载客户端 启动客户端,输入隧道id 启动成功后,隧道管理界面上赠送的域名即可访问了 2. 内网穿透服务的应用 启动服务端代码,监听端口为隧道配置中的端口 const express = require("express"); const app = express(); app.get() app.post() app.listen(8888) 此时
2021-04-23 11:13:39
563
原创 webpack打包原理解析
1. 环境搭建 webpack是nodeJs编写的前端构建工具,所以需要安装node执行打包 安装webpack包 npm install webpack -D // 当前目录安装,执行打包命令只能在当前目录 npm install webpack -g // 全局安装,安装在本地电脑C盘下,可在任意目录下运行打包命令 安装webpack-cli npm install webpack-cli -D // 支持webpack命令行打包 在当前目录安装webpack时需要注意,pack
2021-04-23 10:47:13
564
原创 《算法图解》笔记
《算法图解》 作者:Aditya Bhargava 1. 二分查找 案例:给出一个在1-100之间的数,让人猜中这个数 分析: 简单查找:遍历所有数,最多需要100次才能找对。 二分查找:从中间开始找,比大小就可以舍弃一半的数,最多需要7次才能找对。 二分查找的条件是被查找元素必须是有序的 抽象:给出一个有序数组list和一个待查找的元素item,如果找到返回其位置,如果没有找到返回-1. 实现: function binary_search(list, item){ let low = 0;
2021-04-16 18:25:41
594
1
原创 css动画
1. css动画与js动画 css动画:css动画是规则树的改变,在性能上优于js实现的动画,缺点是存在浏览器兼容性问题。 js动画:js通过操作不dom元素和对应的样式实现动画,影响到了dom树和规则树,性能消耗较大,但不存在浏览器兼容性问题。 2. css动画的实现方式 css动画常见的实现方式有以下几种: transition 实现渐变动画 transform 转变动画 animation 实现自定义动画 3. transition(过渡动画) transition-property:填写需要变
2021-04-14 09:59:53
205
原创 weex跨端开发
1. 搭建开发环境 安装node,切换npm镜像源 全局安装weex-toolkit npm i -g weex-toolkit 查看weex是否安装 weex -v // 执行此命令会自动安装 创建项目 weex create [project name] // 后续很多选项按实际需要选择,建议选推荐的 启动项目 npm start 2. demo项目 ...
2021-04-13 18:44:46
164
原创 百度SEO
1.相关概念 SEO(Search engine optimization):搜索引擎优化,非商业的提升网页在搜索引擎自然搜索结果中的收录数量和排序位置而做的优化行为,获取更多免费流量和更好的展示形象。 SEM(Search engine marketing):搜索引擎营销,包含SEO和付费的商业推广优化。 黑帽SEO:即“搜索引擎作弊”,利用和放大搜索引擎的策略缺陷获取更多用户访问量,伤害用户体验。 白帽SEO:规范的网站设计和良好的用户体验,所被推荐的SEO。 2.SEO优化方法 域名优化:简短,
2021-04-13 10:26:08
394
原创 websocket
1. websocket协议 htpp协议存在解决的问题:http协议只能是客户端主动发起消息,服务端无法主动发送消息,使得客户端只能使用轮询的方式请求获取服务端我们需要的状态或者数据,这种方式耗资源,并且对页面性能也不好。websocket协议解决了上述问题。 websocket协议是全双工的通信协议(客户端和服务端可以同时发送消息)。其通过一次http协议建立连接后将协议转为websocket协议,以此建立了可双向数据传输的持久连接。 其特点是: 1. 建立在 TCP 协议之上,服务器端
2021-04-12 18:20:45
224
原创 express实现服务端
1. 项目结构 demo_project | -- package.json | -- app.js // 入口 | -- router // 接口请求URL到业务处理函数的映射关系 | -- index.js | -- user.js | -- ... | -- controller // 业务处理 | -- index.js | -- user.js | -- ... | -- db // 数据库配置相关 | -- index.js | -- view
2021-04-11 12:24:27
344
1
原创 面试
面试问答说说你对Vue的理解?Vue和React有什么异同?说说你对 说说你对Vue的理解? vue是尤雨溪于2014年发布,通过数据驱动,组件化开发,支持指令的一套开发web应用开源框架。 Vue和React有什么异同? 相同点: 数据驱动视图 虚拟dom 组件化开发 服务端渲染 APP开发 不同点: 数据流向不同:vue双向数据流,react单向数据流。 数据变化的实现原理不同:vue使用的是可变的数据,react使用的是不可变的数据。 组件间通信的方式不同:vue通过事件和回调函数,react通
2021-04-09 14:06:18
149
原创 nodejs创建服务
// 1. 引入http模块 let http = require("http"); let url = require("url"); let util = require("util"); let querystring = require('querystring'); let postHTML = '<html><head><meta charset="utf-8"><title>菜鸟教程 Node.js 实例</title><
2021-04-09 10:24:25
394
原创 域名解析过程
1. 域名解析协议是基于UDP的。 为什么不是传输稳定的TCP? 因为为了降低网络流量,降低解析服务器负载,还有就是解析失败损失也不大。 2. 域名解析过程 搜索浏览器自身的DNS缓存,存在且没有过期,解析到此结束 搜索本地操作系统的DNS缓存,存在且没有过期,解析到此结束 搜索本地系统盘中的hosts文件映射的,存在,解析到此结束 向运营商提供的DNS服务器53端口通过把UDP发送递归请求,存在,解析到此结束 向DNS根服务器发送请求,存在,解析到此结束 解析失败 ...
2021-04-09 10:00:53
310
原创 同步任务,异步任务,宏任务,微任务
同步任务和异步任务 js执行任务是单线程的,代码从上往下按顺序执行 为了解决I/O读写,定时器延时等阻塞代码执行,提出了任务的同步执行和异步执行 一般情况,同步任务优先于异步任务执行 常见的异步执行的任务有: setTimeout, setInterval, ajax异步请求,nodeJs文件的异步读写等 setTimeout(()=>{ console.log("异步任务") }) console.log("同步任务") // 输出为: 同步任务 异步任务 ...
2021-04-09 09:59:08
241
原创 vuex的基本使用
引入模块并定义相关操作 store.js import Vue from "vue" import Vuex from "vuex"; vue.use(vuex) const state = { // 需要存储的状态变量 count: 0, .... } const mutations = { // 必须是同步,修改state中的数据 setCountInMutations(state,val){ state.count = val } } const actions = { .
2021-04-07 20:53:13
99
原创 vue项目中使用echarts
vue项目中使用echarts图表的demo <template> <div id="app"> <!-- 放置echarts图表的容器 --> <div id="echarts_box"></div> </div> </template> <script> import * as echarts from 'echarts'; // echarts所有图表类型全部引入 // 11-3
2021-04-07 19:28:32
310
原创 flex布局
设置在容器上的属性(6个) flex-direction: row || row-reverse || column || column-reverse // 说明主轴及其排列顺序 flex-wrap: nowrap || wrap || wrap-reverse // 主轴方向换行方式 flex-flow: <flex-direction> <flex-wrap>
2021-04-06 20:46:50
101
原创 常见清除浮动的方法
对容器设置 高度固定法:容器盒子高度固定。 容器BFC法: 容器盒子样式设置为overflow: hidden,使容器盒子成为单独的渲染区域。 after伪元素法:容器盒子设置after伪元素,伪元素样式为 .clearfix:after { content: ""; display: block; height: 0; visibility: hidden; clear: both; } .clearfix { *zoom: 1; // 兼容IE6,7 } 双伪元素法:容器盒子设置
2021-04-06 19:53:49
101
原创 js节流与防抖
防抖 定义:高频事件触发,函数在最后触发的n秒后执行。每触发一次重新计时,函数总是在操作触发的最后一次的规定时间后执行。 实现: function debounce(fn, time,args) { let timeout = null; return function(){ timeout && clearTimeout(timeout) timeout = setTimeout(()=>{ fn.apply(this, args); },time) } }
2021-04-04 13:43:12
128
原创 js数组常用方法
js数组常用方法 1. 创建数组的方法 字面量创建数组 var arr = [] var arr = [1, 2, 3 ] 构造函数创建数组 var arr = new Array() // arr.length = 0 var arr = new Array(3) // arr.length = 3 var arr = new...
2021-04-03 21:35:53
109
原创 java学习笔记之开发环境搭建
JVM, JRE, JDK JVM(Java Virtual Machine):java虚拟机,是java程序的运行环境。 JRE(Java Runtime Environment):java程序的运行环境,包含JVM和运行时所需要的核心类库。 JDKE(Java Development Kit):java程序开发工具包,包含JRE和开发人员使用的工具。 三者之间的关系: 安装JDK 下载地...
2021-04-03 21:35:13
121
原创 js 字符串转数值的方法
一元运算 Number() parseInt() parseInt(string, radix) // 将目标字符串以指定进制去解析返回十进制数,无法解析时返回NaN。
2021-04-03 15:57:15
309
原创 Echarts学习笔记之样式篇
Echarts学习笔记之样式篇 ECharts 提供了丰富的自定义配置选项,并且能够从全局、系列、数据三个层级去设置数据图形的样式。 1. 颜色设置 1.1 颜色主题 最简单的更改全局样式的方式,是直接采用颜色主题(theme)。 echarts 4.x+版本除了默认主题外,内置两大主题,“light”和“dark”,可通过如下设置: var chart = echarts.init(dom, ...
2021-04-02 21:54:19
558
原创 Echarts学习笔记之入门篇
Echarts学习笔记 1. 结构搭建 引入文件 <script src="./echarts.min.js"></script> import 'echarts'; import echarts from 'echarts' import * as echarts from 'echarts'; var echarts = require('echarts...
2021-04-02 21:53:20
429
原创 前端文件下载
前端文件下载 1. form表单实现的文件下载 2. jQuery实现的文件下载 3. axiso实现的文件下载 4. 常见的文件下载插件
2021-03-11 22:40:07
134
原创 Vue项目搭建
node安装和npm切换镜像源 node安装 下载 node 官方网址:https://nodejs.org/en/ 安装node 为避免不必要的麻烦和意外,建议默认路径安装,一路next。 安装后在cmd或者powershell中输入 node -v,能够查看到node版本则说明安装成功。 npm镜像源切换 npm是随同node一起安装的包管理工具,其下载依赖包的默认镜像源服务器在国外,网...
2021-03-11 22:38:57
97
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅