11 yuyongkun4519

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 32w+

浏览器缓存策略

为了提高网站的访问速度,我们经常会在web服务器端进行缓存设置,常用的缓存设置方式是强缓存、协商缓存,那么两者有什么区别呢?一,强缓存cache-control:max-age:缓存有效期public:客户端和代理服务器都可以缓存资源private:只允许客户端缓存资源immutable:永不过期no-cache:资源不进行强缓存,走策略缓存no-store:客户端...

2020-04-08 12:08:27

ES6 Module与CommonJS模块有何区别?

1,模块依赖解决方式不同es6 module与commonjs最本质的区别是两者对模块依赖的解决方式,es6 module是静态的而commonjs是动态的,es6在编译阶段既确定了模块依赖关系及模块导入导出的变量,而commonjs只有在运行阶段才能确定这些。2,变量导出方式不同在导入一个模块变量的时候es6 module导出的是变量的动态映射,既在当前模块改变变量会影响导出模块变量,在导...

2020-04-08 09:42:06

Vue模板语法template VS Vue渲染函数render

一,vue模板语法(template)一个template模板,从vue实例化到展示到页面上,会经过怎样的过程呢,我们来分析一下。如下示例:new Vue({ el:'#app', template:'<h3>hello world</h3>'})就离不开vue模板语法解释器vue-template-compiler,vue-templa...

2020-03-24 18:20:09

JavaScript中onmouseenter、onmouseleave和onmouseover、onmouseout的区别

实例1:只有一个元素,没有子元素实例2:如果鼠标从上到下经过全部dom元素结果统计:实例1中【onmouseenter、onmouseleave】、【onmouseover、onmouseout】事件各触发1次事件处理程序。实例2中【onmouseenter、onmouseleave】事件触发1次事件处理程序,【onmouseover、onmouseout】事件会触发10次事件...

2020-03-13 17:30:00

CSS中clientHeight、offsetHeight、scrollHeight、scrollTop、scrollTo几者的区别和关联

示例:对应css为.div { width:300px; height: 200px; margin: auto; padding:10px; border: 5px solid #000; font-size: 12px; overflow-y: auto; background-color: #FFEB3...

2020-02-24 17:20:19

RESTful和GraphQL的比较

对于前后端分离的项目,后端通常把数据接口定义成RESTful API或者GraphQL,那么两者有什么不同呢?一,RESTful API:RESTful API常见的请求方式有get:查询数据;post:添加数据;put:更新数据;delete:删除数据不足:扩展性不足一个接口有可能因为需求变更而变的越来越臃肿,比如获得用户信息的接口/user/userid,刚开始可能只...

2020-02-24 16:23:53

CSS盒模型与box-sizing详解

对于刚入门的前端小伙伴,对box-sizing、css盒子模型可能会有疑惑,今天我带领大家彻底搞清楚这两个东东。要想搞清楚box-sizing和CSS盒子模型,首先要理解这两者各有什么作用。box-sizing:允许您以特定方式定义匹配某个区域的特定元素(官方)。官方定义中有两个关键词‘特定方式’、‘特定元素’,什么特定方式呢?其实就是box-sizing对应的两个属性值,border...

2020-02-24 15:54:13

JavaScript中for...in,Object.keys,Object.getOwnpropertyNames获得数组或者对象的key,value有什么不同

一、遍历非Array对象1、for...in主要用于遍历对象的可枚举属性,包括自有属性、继承自原型的属性。var obj = {"name":"jack","sex":"male"};Object.defineProperty(obj, "age", {value:"24", enumerable:false});//增加不可枚举的属性ageObject.prototype....

2020-02-23 11:45:29

使用nginx处理静态资源请求,动态内容交给Node.js进行处理

由于项目后台使用的是node,然而node不适合对静态资源的处理,因为他的异步处理(事件轮询)机制,所以更擅长的是密集I/O型的应用,所以我就有了一个想法,使用nginx来做反向代理,当请求的是静态资源的时候,直接由nginx(监听80端口)自己处理并返回,其他非静态资源请求转发至node(8080端口),由node来处理。下面是我的nginx配置文档,nginx安装请自行百度,大把资料啦~...

2020-01-02 10:39:15

Vue关于双向绑定和单向数据流的理解

很多接触Vue开发不久的同学会有疑问,vue既然是单向数据流为什么会有双向绑定一说?关于Vue数据绑定首先引用官网原话:AngularJS 使用双向绑定,Vue 在不同组件间强制使用单向数据流。这使应用中的数据流更加清晰易懂。官网已经说的很清楚了,在Vue中使用的是单向数据流,我们由此可以确定,Vue中的所谓的双向绑定并不是真正的双向绑定。要想理解Vue中的所谓双向绑定首先要先弄清...

2019-08-27 17:02:14

nodejs运行原理

最近在学习nodejs,对nodejs的原理做了以下总结:nodejs是什么?可以把nodejs理解成是一个运行在服务端的基于chrome v8 engine的js运行环境。nodejs优势?由于nodejs使用的是事件驱动,非阻塞的I/O模型,因此nodejs执行效率非常高。nodejs缺点?nodejs对I/O的处理非常高效,但是对cpu密集型应用,会导致主线程阻塞,阻...

2019-08-26 15:44:04

ES6 数组Array.of和Array.from详解

,false,'hello')和var arr=Array.of(4,false,'hello')没有任何区别但是如果参数是这样var arr=new Array(4)则返回的是一个长度是4的空数组而var arr=Array.of(4)返回的是含有元素4的数组不同之处:可以看到当new Array时,如果传入的是唯一的一个数字,如果只是用来定义数组的长度没有问题,如果定义的是数组的元素,则可以用Array.of代替2,

2019-05-06 11:41:22

JavaScript基础

复杂数据类型包括:Object1.3,如何区分JavaScript中的数据类型呢?由于JavaScript是松散类型的,因此需要一种方式来检测给定变量的数据类型,typeof就是JavaScript提供的检测数据类型的操作符。 var data=100typeof data ==="number"var data="hello JavaScript";typeof data==='string' //truevar data=tr

2019-03-23 21:23:06

vue声明周期

2019-02-25 21:51:36

Vue生命周期 VS React生命周期

orcomponentWillMountrendercomponentDidMount shouldComponentUpdatecomponentWillUpdaterendercomponentDidUpdate 如图:     二者对比文章搜集:React.js与Vue.js:流行框架的比较https://baijiahao.baidu.com/s?id=1608099200125495014&wfr=spid

2019-01-29 11:12:28

JavaScript 对象属性

能否把属性修改为访问器属性,该属性默认值是true。2,Enumerable定义了能否通过for...in遍历对象属性,该属性默认值时true。3,Writable定义了能否修改对象的属性4,Value定义了属性的数据值,默认为undefined 创建一个对象:var school={name:"北大"};我们要修改属性默认的特性,必须使用ECMAScript5的Object.defineproperty方法。 操作1:修改conf

2019-01-23 10:57:32

JavaScript闭包

的变量,反之则不行。2,作用域链当函数第一次执行的时候,会创建一个执行环境及相应的作用域链,并把作用域链赋值给一个特殊的内部属性Scope。Scope里面既包含当前环境的活动对象又包含父作用域里面的活动对象,活动对象有this,arguments和其它命名参数构成,在浏览器中最顶层作用域中的this对象是window。 正常情况下一个函数执行完成里面的活动对象会被垃圾回收机制自动回收,有一种情况例外,就是今天我们要说的闭包。 什么叫闭包?闭包是指有权访问另一个函数作用域中变量的函

2019-01-17 12:02:15

浏览器中进程与线程

览器主进程只有一个,作用有:负责浏览器界面显示,用户交互(前进、后退,关闭等)负责各个页面的管理,如创建和销毁其它进程将Render进程中得到的内存中的bitmap,绘制到用户界面上网络资源的管理,如下载2,GPU进程用于3d绘制等,如为dom元素添加css3样式-webkit-transform:translateZ(0),将使浏览器的渲染从cup转向gpu,开启gpu加速。3,浏览器渲染进程(Render进程)也被称为浏览器内核。浏览器渲染进程的主要作用是页面渲染

2019-01-05 18:06:11

浏览器中进程与线程

一,首先使用快捷键Shift+Esc打开浏览器Chrome任务管理器,看到如下图界面:可以看到浏览器默认有三个进程:1,浏览器主进程(Browser进程)浏览器主进程只有一个,作用有:负责浏览器界面显示,用户交互(前进、后退,关闭等) 负责各个页面的管理,如创建和销毁其它进程 将Render进程中得到的内存中的bitmap,绘制到用户界面上 网络资源的管理,如下载2,G...

2019-01-05 18:01:38

Express中如何使用async/await

随着Node.js v7.6.0版本开始支持async/await,在服务器端进行Node.js编程也终于有了最佳的异步解决方案。只要你Node.js安装的是v7.6.x以上版本,都是支持async/await语法的。所以只要你安装的是Node.js新版本,在Express程序里面是可以直接使用async/await方法的。参考下面实例:const express = re...

2019-01-05 16:11:53

查看更多

勋章 我的勋章
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。