- 博客(41)
- 收藏
- 关注
原创 javascript的宏任务及微任务
直接上代码console.log('1');setTimeout(function() { console.log('2'); new Promise(function(resolve) { console.log('3'); resolve(); }).then(function() { console.log('4') })})new Promise(function(resolve) { console...
2020-12-25 13:42:06
217
原创 js的赋值
var a = {n: 1}var b = a;a.x = a = {n: 2}console.log(a.x);console.log(b.x)解析这个题,首先我们得知道 a=[1,2,3] ,b= a; a= [1,2,3,4,5];a =[1,2,3,4,5];b=[1,2,3];这个时候大家会有点纳闷,引用类型不应该是b等于a的值应该是[1,2,3,4,5];这个是错误的,这个是有开辟一个内存,让a指向[1,2,3,4,5];如果是a.push(4),则a和b是...
2020-12-07 09:14:13
983
原创 javascript的函数的防抖和节流
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title></head><body> <input type="te.
2020-11-30 09:55:26
147
原创 nginx的配置前端
先熟悉一下命令rpm -qa|grep nginx 查看包含nginx的包rpm -ql nginx-1.16.1-3.el7.x86_64 查看nginx这样会找到放置html的目录systemctl status nginx 查看状态是否启动了systemctl restart nginx 重启系统
2020-11-23 17:10:18
130
原创 2020-11-23
rpm -qa|grep nginx 查看包含nginx的包rpm -ql nginx-1.16.1-3.el7.x86_64 查看nginx
2020-11-23 16:40:50
79
原创 Token的深入理解
Bearer Token 前端token加在请求头里面:authorization:bearer + token后端采用:JWT(json web token)包含三部分:头,载体,签名头就是type:jwt hs256载体就是一些用户的信息,签名就是后端的密钥,它们会生成字符串...
2020-11-15 14:31:19
717
原创 webpack
对于前端来说webpack是必会的一项,今天好好的学习一下webpack结论:1,webpack可以识别js/json,但是不能识别css和image里面。2,webpack可以将ES6和Commonjs的模块化转换成浏览器可以识别的。3,webpack的生产环境比开发环境在js文件中多了一个代码压缩的。webapck主要包含:entry,output,loader,plugins,mode(不写会提示警告development/production)执行打包单个js的命令行:webpack .
2020-11-12 16:47:43
124
原创 vuecli中设置每个模块都可以使用的样式
在vuecli中的vue.config.js配置中设置css:{ loaderOptions:{ scss: { prependData: `@import "@/scss/_bg.scss";`, }, }}可以在每个模块中都可以使用在每个模块中引入scss样式 ~表示相对路径@import '~@/src/a.scss'...
2020-09-20 15:17:01
915
原创 vue的keep-alive组件的使用记录
今天使用keep-alive组件,眺转路由的时候,使用beforeRouteEnter()这个方法的时候不能访问this这个,但是next这个方法参数可以是回调函数beforeRouteEnter(to,from,next){ next(vm=>{ vm.id = to.query.id; }) }这样就可以解决了...
2020-09-15 11:19:15
104
原创 封装axios和归纳api文件,这样方便接口的统一管理,复制即用
封装axiosimport axios from 'axios'const http = axios.create()http.defaults.timeout = 3000http.interceptors.request.use(config => { return config}, error => { console.log(error) return Promise.reject(error)})http.interceptors.response.us
2020-09-15 09:10:49
138
原创 MockJS的使用方法,复制即用
使用mockjs的方法:npm install mockjs -Dmock.js文件内容import Mock from 'mockjs'Mock.setup({ timeout:500-1000})let GetList = function(a){ //这里的a指的是请求传递的参数 return { data:'1' }}Mock.mock('http://www.baidu.com/getList','Get',GetList);//在main.js文件
2020-09-15 09:05:54
339
原创 js模拟多态
我们知道js是弱类型语言,但是js可以模拟出来面向对象的(继承,封装,多态)js实现多态var makeSound = function(animal) { animal.sound();} var Duck = function(){}Duck.prototype.sound = function() { console.log('嘎嘎嘎')}var Ch...
2018-10-18 11:13:41
723
原创 mocha测试
package.json的配置{ "name": "mocha-demos", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "
2018-10-17 21:29:51
293
原创 websocket通信
websocket属于是h5的不是属于node但是服务器和node的通信的服务器差不多,有一点就是,服务器接收数据时message事件,发送时send(),直接上代码客户端也就是页面:<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></tit..
2018-10-17 20:10:46
320
原创 node实现通信
实现通信则必须有客户端和服务器创建一个服务器:var net = require("net")var server = new net.createServer()var i =0;var obj = new Object()server.on("connection",(client)=>{ client.name = ++i; obj[client.name...
2018-10-17 19:32:53
664
原创 node中express-session的简单配置
在脚手架中用express-session 中用到express-session配置app.use(session({ secret: 'recommend 128 bytes random string', cookie: { maxAge: 20 * 60 * 1000 }, resave: true, saveUnintialized: true})...
2018-10-17 16:40:55
834
原创 node连接mongodb数据库
第一种方法:var mongodb = require("mongodb")var server = new mongodb.Server('localhost',27017,{auto_reconnect:true})var db = new mongodb.Db('zz1805',server,{safe:true})//var obj = {"name":"xuxu","a...
2018-10-10 17:53:22
281
原创 window安装mongodb数据库 详细解答
首先在下载下来那个msi的安装,一直next 中间有个 点击这个红色的,主要设置路径,1/把mongodb安装到某一个盘符下(D)在d盘创建一个mongoDB的文件夹 设置路径就设置这个2/创建数据目录 D:data/db文件夹3/找到mongodb文件夹下的bin文件夹打开mongod.exe4/双击打开mongo.exe 5/浏览器输入127.0.0.1:27017...
2018-10-09 11:34:13
214
原创 js算法冒泡排序,选择排序
直接上代码var arr= [3,5,11,7,4,8]; for (var i=0;i<arr.length;i++) { for (var j=i+1;j<arr.length;j++) { if(arr[i]>arr[j]){ var temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; ...
2018-09-26 21:01:15
840
原创 js深层拷贝
拷贝分为浅层拷贝和深层拷贝,在js中拷贝主要针对于对象类型的,因为对象直接赋值是地址,这样复制过来的对象里面改变,这时候原来的对象也会跟着变化,这因此不是我们想要的,因此我们要深层拷贝,深层拷贝时拷贝过来的对象再怎么变化,原来那个不会变化,要考虑到对象里面可以嵌套对象,要做到这个完全深拷贝,方法有多种,以下两种供大家看。方法一,function deepcopy(obj){ i...
2018-09-12 19:58:35
1580
原创 rem,em,px的区别
最近看到em和rem的时候,自己不是太懂就上网查找资料,px,em,rem的区别:首先,px是我们在pc端最常用的单位,em很少用,rem多数用于移动端。px是绝对单位。em是相对单位,相对于父元素的字体的大小,(字体大小具有继承的关系)。rem是相对于根元素的字体大小。这也就是为什么常用rem而很少用em,因为rem就相对于根元素的字体的大小,不容易改变。在网上有好多用body{fon...
2018-09-08 10:15:20
323
原创 封装ajax
function ajax(obj){ var str = ""; for(var key in obj.data){ str += key +"="+obj.data[key]+"&"; } str = str.substring(0,str.length-1); var xhr = null; if(window.XMLHttpRe...
2018-09-05 17:18:16
164
原创 解决php在存mysql的时候乱码现象。
在mysql的配置文件中修改添加在mysql.ini配置文件中最后添加character_set_server=utf8collation-server=utf8_general_ci 在[client]后加以下命令就可以,然后重新启动以下服务。...
2018-09-05 08:41:22
265
原创 js面向对象(一)
js面向对象:js是个弱类型语言,它是基于对象的语言 ,它能模拟出来面向对象的形式,不能说它能面向对象,从另一个角度说,说起面向对象,有三个特性,封装,继承,多态,但是js能实现封装,但是继承是类特有的,也就是说js能模拟出来。这个不能说js语言面向对象。 创建对象的集中方法各有个的利弊:1,用Object创建对象:(缺点:代码冗余,每次创建的时候都会再写一遍);2,用工厂...
2018-08-30 15:32:33
1989
2
原创 透明度轮播
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> body,ul,li{ padding: 0; ma
2018-08-28 22:49:23
405
1
原创 左右轮播
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> body,ul,li{ padding: 0; ma
2018-08-28 22:47:56
321
原创 js封装拖拽函数
<!DOCTYPE html><html lang="zh"><head> <meta charset="UTF-8" /> <title>Document</title> <style type="text/css"> div{ w
2018-08-25 14:25:20
1133
1
原创 js仿植物大战僵尸的豌豆射手
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> *{ margin: 0; padding: 0;
2018-08-25 14:11:47
5262
1
原创 正则表达式慎重用g参数
var pat5 =/^[0-9a-zA-Z._-]+[@][0-9a-zA-Z_-]+[.]([a-zA-Z]){1}$/; inputs[4].onblur=function(){ if(pat5.test(this.value)){ spans[4].innerHTML = "正确"; console.log(111); }else{ spans[4...
2018-08-23 21:59:21
496
1
原创 Cookie的总结
Cookie是我们经常用的知识点,其中我们要弄明白Cookie的实质也就可以了。就是我们把需要存的东西存在Cookie,在打开或者链接到别的页面,在取出cookie也就可以了。Cookie是存在终端的硬盘上。我们要封装cookie里面有设置cookie,得到Cookie和去除cookie。我们要明白,如果cookie的名字在原来的cookie里面有,则会取代上一个,更换值。 functi...
2018-08-23 11:26:20
218
原创 Js中三大家族:offset,scroll,client
Js中三大家族:offset,scroll,clientOffsetoffsetWidth和offsetHeight一样,就拿offsetWidth举例子。offsetWidth和offsetHeight: 自身的宽高,等于width+padding+border;如果没有设置宽高,则返回内容的宽高。obj.offsetWidth和obj.style.width。的区别:o...
2018-08-16 16:05:04
398
原创 Bom(浏览器对象模型)
说起Bom,它就是浏览器模型,它是js的组成部分,js是有ECMAScript,BOM,DOM。Bom主要对象时window对象。screen对象:window.screen.width 表示屏幕的宽度。 window.screen.height表示屏幕的高度。 window.screen.availW...
2018-08-16 15:15:02
200
原创 js中内置Date()对象总结
今天看了date对象,然后总结了一下date对象常用的API。 //设置时间 var dt = new Date("2000/06/06"); var dt1 = new Date("2000-08-06"); console.log(dt,dt1); //两个时间相减会得到它们之间的相差的毫秒数。 ...
2018-08-15 20:15:10
469
原创 ES5严格模式和普通模式及ES5新增的数组的API
ES5的严格模式和普通模式严格模式用关键词 ‘use strict‘,在作用域写,如果写在局部作用域中,则在局部作用域中起作用,在全局写严格模式则在全局都器作用。严格模式和普工模式的区别:1,变量声明:在普通模式下可以不用var 声明,但是在严格模式下必须用var 声明。2,禁止用with。在普通模式下,可以用with遍历对象,但是在严格模式写不可以用with。3,设立eva...
2018-08-15 15:57:54
313
原创 js作用域链和执行环境
Js作用域:我们知道js没有块级作用域,有全局作用域和局部作用域。验证js没有块级作用域:Js作用域是变量和函数被访问的范围。 执行环境:执行环境可分为全局执行环境和局部执行环境。每一个执行环境都有一个与之关联的变量对象,这个变量对象包含了这个执行环境的变量和函数。执行环境流机制:每一个函数都有自己的执行环境,当执行流进入到函数的执行环境,这时会把函数这个执行环境放到环境栈...
2018-08-11 14:55:16
755
翻译 js预编译
今天遇到一个变量提升的问题,通过看网上的前辈的解说,弄明白了。以下是本人的见解,如果有些不是太对,望前辈指导,欢迎留言。在运行代码的时候会有三步进行:语法分析,预编译,解释执行。语法分析就是js引擎分析写的代码是否有语法错误,解释执行就是运行写的代码,但是最最要的就是预编译。给我的感觉只要弄明白这个预编译的核心思想就可以解决遇到的问题了。在代码中有直接函数 function aa(){} 和用...
2018-08-11 11:55:18
125
原创 javascript 的定义和数据类型转换
定义 javascript 是基于对象和事件驱动,并具有安全性的客户端脚本语言。数据类型转换分为显式转换和隐式转换当数据进行加减的时候js引擎会隐式转换成别的数据类型。字符串 + 字符串 → 字符串字符串字符串 - 字符串 → NaN字符串 - number → NaN字符串 + number → 字符串number字符串 + null → 字符串null字符串...
2018-08-06 17:23:44
115
原创 背景高级和渐变总结
切割背景图片的范围Background-clip:border-box/padding-box/content-box设置背景图片从哪里开始放,默认从padding开始Background-origin:border-box/padding-box/content-box设置背景图片的大小,cover是根据父盒子的大小平铺,而contain是比如宽先达到父盒子的宽度,高没有达到,高...
2018-08-02 12:06:08
676
原创 前端(移动端)
移动端在js中那个750是效果图的宽度,100是px 这里我们用100px像素转换成rem比较方便。在做移动端的时候一般用flex盒子,这个比较方便。<script> window.onload = function(){var html = document.querySelector("html"); html.style.f...
2018-08-02 11:43:53
448
原创 flex总结
媒体查询:通过检测终端的width而给页面设置css样式。响应式布局:让一个页面兼容pc端,ipad,手机短。内部用@media screen and(min-width:){ css样式}外部用:<link rel=”stylesheet” media=”screen and(min-width)” href=”” />flex布局:dispaly:fle...
2018-07-28 16:07:06
387
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人