自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ES6中的Promise

title: ES6中的Promise一. 提要为解决传统异步所造成的回调地狱,社区提出了Promise方案并最终将其写入了语言标准。其用法如其名——承诺:即非立即兑现,通过then方法调用其状态,通过catch捕获错误。二. 状态Pending:进行中Fulfilled:已成功Rejected:已失败Promise的另一个特性是无法改变。正如其英文寓意一样,一旦状态改变就...

2019-03-20 21:04:26 428

原创 ES6中的Symbol

title: ES6中的SymbolSymbol函数前不能使用new命令,否则会报错。这是因为生成的 Symbol 是一个原始类型的值,不是对象。也就是说,由于 Symbol 值不是对象,所以不能添加属性。基本上,它是一种类似于字符串的数据类型。Symbol函数可以接受一个字符串作为参数,表示对 Symbol 实例的描述,主要是为了在控制台显示,或者转为字符串时,比较容易区分。...

2019-03-20 21:03:42 404

原创 JavaScript中的事件循环&消息队列

title: JavaScript中的事件循环&消息队列作为一门设计初衷为了处理浏览器网页交互(DOM操作、UI动画等)的语言,JavaScript只能被设计为单线程(否则多个线程同时处理DOM那将会造成混乱)。可是写过JavaScript代码的人都用过定时器、ajax、事件绑定等。如果是单线程那岂不是无法完成这些异步请求?一. 前言其实,JavaScript单线程指的是浏览器...

2019-03-20 21:00:32 2646 3

原创 我所了解的跨域

title: 我所了解的跨域一. 什么是跨域由于浏览器的同源策略限制,导致了我们无法跨域获取数据。呸,是获取数据之后浏览器出于安全考虑将信息拦截。那么什么是同源策略?同源策略限制了从同一个源加载的文档或脚本如何与来自另一个源的资源进行交互。这是一个用于隔离潜在恶意文件的重要安全机制。1.1 同源策略的用处1.1.1 接口请求由于服务端Server会给登陆过的你发送一个co...

2019-03-20 20:56:25 327

原创 JavaScript中的深浅拷贝

title: JavaScript之深浅拷贝一. 前言首先咱们先理一下这玩意儿的概念浅拷贝:将对象的各个属性进行依次复制,并不会进行递归复制,也就是说只会赋值目标对象的第一层属性。深拷贝:递归拷贝目标对象的所有属性。咱们可以这么理解:浅拷贝就像人口普查,只往上看这一代。深拷贝则是入党审核,你家庭案底都得查得清清楚楚。那么咱们正式开始二. 应用场景当我们需要大量复制某些对象...

2019-03-20 20:55:20 181

原创 Vue中的组件间通讯

之前也写过关于组建通讯的文章,但主要是讲父子组件之间的通讯。此文章当作总结,以备日后复习一. 父子组件间通讯1.1 单向传递 propsVue中我们可以通过props完成父向子单向传递数据的任务。如此即可保证子组件无法随意更改父组件的数据,保证安全性<!-- 父组件 --><template> <div> <ChildCom

2019-03-12 23:21:14 197

原创 Vuex初体验

一. 全局引入main.js中引入import Vuex from 'vuexVue.use(Vuex)new Vue({ el: '#app', router, components:{...}, template: '...', store})二. 创建state 用来数据共享数据存储mutation 用来注册改变数据状态getters 用来对共享数据进行过...

2019-03-11 20:36:55 165

原创 Vue中的emit、on和v-on

由于本人才疏学浅本文章参考了诸多大神的想法,会在文末贴上原文地址一. $on && $ emit$emit(eventName, [...args]):触发事件$on(eventName, callBack):监听事件如果把Vue看成一个家庭(相当于一个单独的components),女主人一直在家里指派($emit)男人做事,而男人则一直监听($on)着女士的指派($...

2019-03-07 22:03:15 2404

原创 JavaScript中的内存泄露

一. 定义js如同其他高级语言一样都有垃圾回收机制,会周期性的检查之前分配的内存是否可达,帮助开发者管理内存。对不可达的内存通过算法确定、标记并适时回收。而内存泄露则可以理解为当应用程序不再需要占用内存时,由于某些原因操作系统未回收其内存。二. 堆?栈?队列?2.1 任务队列由于js是单线程,所以所有的任务都需要排队。学过操作系统的都知道单线程最大的浪费就是输入输出时的等待,所以J...

2019-03-06 11:16:44 183

原创 JavaScript中call&&apply详解(番外)

call和apply均用于this值绑定,区别在于参数列表Function.apply(thisObj, args)Function.call(thisObj, [param1[, param2 [, param3 [... [,paramN]]]]])前者传入参数列表(arguments),后者挨个向里边放参数call、apply方法可以将一个函数的对象上下文从出事的上下文改编为由t...

2019-03-04 17:20:33 240

原创 JavaScript中的this解析

一.默认绑定独立函数调用时遵循默认绑定的原则。一般情况下若无其他规则出现则默认将this绑定到全局对象上。function foo(){ var a = 3; console.log(this.a)}var a = 2;foo() // 2二.隐式绑定若调用位置有上下文对象就遵循隐式绑定(如example.foo())function foo(){ console.log(...

2019-03-04 17:06:53 157

原创 JavaScript中的闭包

其实这个专题之前就写过一些东西,不过当时属实是个小老弟,非常生涩而且里边的东西都是复制粘贴来的。想表达的东西很多但是都没有表达清楚。所以面临面试的我打算重新总结一番,当作一个回顾吧一.是什么什么是闭包?MDN:包是函数和生命该函数的词法环境的组合Tyler McGinnis:子函数在其父级变量环境上“关闭”的概念w3cschool:词法表示包括不被计算的变量的函数。也就是说,函...

2019-03-03 22:05:36 189

原创 JavaScript中的作用域

一.词法作用域1.1 LHS和RHS若查找的目的是对变量进行赋值则引擎会使用LHS查询若目的是获取变量的值则使用LHS查询如题,LHS查询的目的是对变量赋值,则可以理解为寻找变量的容器本身而RHS查询则应理解为retrieve his source value(取其源值)我们可以简单的理解为LHS是赋值语句左边部分,注重的是变量本身。而RHS则是赋值语句右边部分,注重的是所要赋给...

2019-03-03 21:16:13 239

原创 Js中prototype、[[prototype]]和__proto__的区别和用法

一.显式原型&隐式原型显式原型:prototype隐式原型:__proto__1.1 Important__proto__是每个对象都具有的属性prototype是Function独有的属性1.2 Tips对象的隐式原型的值为其对应构造函数的显式原型的值fn.__proto__ === Function.prototype函数的prototype属性是定义...

2019-02-28 22:16:45 16002 6

原创 操作系统笔记(6)——存储器管理

多级存储器结构最高级:cpu寄存器(操作系统管理范畴。断电则信息不存在)中级:主存(操作系统管理范畴。断电则信息不存在)高速缓存(容量小、速度快、价格高)主存磁盘缓存(依托于固定磁盘,提供对主存储空间的扩充,暂存频繁使用的磁盘数据)低级:辅存(隶属于设备管理范畴,其存储信息可以被长期保存)磁盘可移动存储介质程序的装入和链接绝对装入方式(只适用于单道程序环境)...

2019-01-05 21:28:35 766 1

原创 操作系统笔记(5)——处理机调度与死锁

启蒙篇死锁是进程管理的一部分,故此章是对第一章进程管理部分的延伸扩展基础篇1.死锁三胞胎死锁:僵持,各持对方所需资源互不相让活锁:僵持,彼此间渴望资源却都不主动争夺资源,导致资源空闲的同时二者被阻塞饥饿:一方让步,等待时间过长。而另一方一直占用资源2.原因&产生的必要条件原因产生原因:多进程对有限不可剥夺资源的竞争Ⅰ.信号量使用不当eg:所赋初值有问题,导致...

2019-01-05 18:48:12 231 2

原创 操作系统笔记(4)——线程

启蒙篇线程是比进程更小的、能独立运行的基本单位引入进程的引入是为了使多个程序并发执行线程的引入是为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性基础篇1.线程&进程调度:在引入了线程的操作系统中,将线程作为调度和分派的基本单位并发性:引入了线程的操作系统中,不仅进程可以并发执行,同一个进程中的多个线程之间亦可并发执行拥有资源:一般而言线程自己不拥有资...

2019-01-05 18:46:26 277

原创 操作系统笔记(3)——同步与互斥

启蒙篇基础篇并发性:cpu可以分时间段交替执行不同程序代码1.临界资源&临界区临界资源:一次只能被一个进程所使用的资源eg:硬件——打印机、网卡、键盘软件——共享变量临界区:每个进程中访问临界资源的那段代码成为临界区每个进程在进入临界区之前,应先对欲访问的临界资源进行检查,看他是否正在被访问若是则进程不能进入临界区若否则可以进入访问,并设置...

2019-01-05 18:43:44 1106 3

原创 西安邮电大学JavaWeb考试复习

论述MVC设计模式MVC(model,view,controller),一种将业务逻辑、数据、界面分离的方法组织代码的框架。在改进界面及用户交互的同时,不用重写业务逻辑。MVC将传统的输入、处理和输出分离。Model:模型,逻辑部分,也是表示应用程序的核心,比如说数据库的表和记录View:视图,数据显示,也是表示界面,是用于显示的,比如说显示数据库的记录Controller:控制器,用...

2019-01-03 17:37:36 1877

原创 操作系统笔记(2)—— 进程管理

进程管理启蒙篇进程的由来单道程序

2019-01-01 12:05:47 1282 1

原创 操作系统笔记(1)——起始与发展

OS是软件和硬件资源的管理者cpu如何分配——第二章进程管理内存如何分配——第三章内存管理磁盘如何分配——第四章文件管理外设如何分配(USB接口)——第五章I/0子系统写在前面操作系统是介于用户和硬件之间的一层软件,用于方便用户操作底层硬件。OS会向用户暴露/提供一些接口:命令行接口GUI(图形用户接口——Graph User Interface)程序接口(API——App...

2019-01-01 12:03:03 189

原创 Node连接mysql之——登陆验证(1)

写了这么久前端忽然想看一下后台大佬的世界,所以就看了一下nodeJS中的express框架和koa。不过今天咱们不说这玩意儿,而是讲一下我们最重要的东西:数据库的连接要用到数据库当然少不了我们稳定可靠的mysql咯,我们要试着做一个验证登陆的东西,所以做如下配置const express = require('express');const session = require('expre...

2018-12-05 20:03:21 1125 2

原创 Vue项目中关于axios跨域的设置

在config文件夹中的index.js文件我们要将proxtTable选项设置。参数如下proxyTable: { '/api': { target: 'http://192.168.1.xxx:80', // 数据接口 changeOrigin: true, // 跨域 secure: false, pathRewrite: {...

2018-12-03 22:16:57 259

原创 浅谈CSS3中的部分属性——flex布局

display:Flex简介:flex是Flexible Box的缩写,即“弹性布局”设置display:flex;属性后,子元素的float,clear和vertical-align属性将不再起作用此属性既适用于块级元素也适用于行内元素概念display属性为flex的元素称为容器,其所有子元素则为容器成员,称为flex item(flex项目)。容器默认有x,y两条轴:水平的...

2018-12-01 10:26:53 228

原创 Vue杂记之——v-model&&v-bind

写在前边暑假的时候学vue,但是当时没有整理导致后来使用的时候对一些基础概念有些遗忘,尤其是自己的理解出现了些许偏差。在此查漏补缺作为vue最基础的指令,v-bind和v-model无疑在数据传递,绑定等方面有着多种多样的应用,下面我们对他们进行一次汇总v-bind简写“v-bind:“可以简写作”:”绑定class动态切换v-bind:class="{}"的写法可以动态的...

2018-12-01 10:25:23 274

原创 MySQL笔记2——查询专题

子查询(Subquery):指出现在其他SQL语句内的SELECT子句。子查询嵌套在查询内部,且必须始终出现在原括号内子查询可以包含多个关键字或条件(如DISTINCT,GROUP BY,OREDR BY,LIMIT,函数等)子查询外层查询可以是SELECT,INSERT,UPDATE,SET或DO子查询的返回结果可以是标量、某行、某列甚至是其子查询使用比较运算符的子查询语法:o...

2018-12-01 10:24:27 185

原创 MySQ笔记1——杂记

写在前面mysql在使用过程中的一些工具语句显示当前服务器版本:select version();显示当前日期时间:select now();显示当前用户:select user();跳转至当前数据库:use db_name;显示跳转至的数据库信息:select database();显示服务器下的数据库列表:show {database|schemas};显示数据库信息(默认值...

2018-12-01 10:23:41 176

原创 Vue-Router杂记

在vue路由中有许多容易混淆的概念,以及一些相近词语,今天在此总结一下router和router和router和route在vue组件中,每个组件都会拥有自己的router属性和router属性和router属性和route属性。至于区别嘛……router属性中存放的是方法route属性中存放的是属性和正常写法中,一层路径(/xxx)对应一个router-view,对应显示...

2018-12-01 10:22:20 166

原创 Vuex初体验

写在前面作为一个Vue用户,大家想必已经厌倦了props、bus的复杂和繁琐。所以今天我们来体会一下Vuex,在降低耦合度的同时还增加了代码的可维护性。可谓是一举两得。同时由于其简单的语法和较少的内容,也适合大多数使用vue-cli的童鞋准备在安装之前建议你们去chrome商城中找一个名为“Vue.js devtools”的插件,可以跟踪数据的变化。开始state使用Vuex的时候,我...

2018-12-01 10:17:36 167

原创 聊聊jquery的ajax

jq的ajax方法封装了原生的阿贾克斯请求,让用户得以更加方便的使用。我们来看一下双方的对比html部分:<form> <input type="text" name="username" id="username"><br> <input type="password" name="password&q

2018-11-19 22:51:19 186

转载 CSS3之rem

近些年来随着微信小程序的蓬勃发展,原本适用于PC端的字体型号px好像不再那么的万金油了,尤其是面对不同的手机屏幕,px的适配性显得过于呆板。之前的一些大厂选用了通用型号的屏幕适配,多余的部分则用留白来填补。这样虽然让Plus型号得以施展,但是一段留白总归看的诸位土豪心中不爽。随着CSS的发展,rem横空出世解决了这一难题为了大家的时间,我们采用我初中答政治题的方式,分“是什么”,“为什么”,“怎...

2018-11-03 20:52:57 2173

转载 鸭子模型???

最近在网上看到一个概念:“鸭子模型”,出于好奇搜一下然后就有了这篇水文,各位看一下图个乐呵就好了背景如果它走起来像鸭子,而且叫起来像鸭子,那么它就是鸭子也就是说,我们只关注对象行为而不关注对象本身推论凡是这样签名的方法:object.method(arg1, arg2, …)的方法,都可以采用method.apply(object, [arg1, arg2, …])进行调研。arra...

2018-11-01 15:48:22 1706

原创 了解ES6中的Iterator迭代器

写在前面迭代器是带有特殊接口的对象,用以为不同的数据结构提供统一的访问机制由于目前ES6版本有4种可遍历的“集合”(Array,Object,Map,Set),所以拥有Iterator之后一切都变的简单了许多。我们只需要为其部署Iterator接口即可遍历便利过程创建一个只针对想,指向当前数据结构的起始位置第一次调用只针对象的next方法,将指针指向数据结构的第一个成员。。。。直至...

2018-11-01 11:27:26 200

原创 封装MongoDB类库

学习Koa的时候遇到了mongodb,虽然我的电脑出了点问题不知为什么安装不上,但是看到视频教学感觉还是非常有用的,在此做一下总结var MongoDB = require('mongodb');var MongoClient = MongoDB.MongoClient;//用户Id必须以此属性格式返回。const ObjectID = MongoDB.ObjectID;var Conf...

2018-10-23 23:09:03 219 2

原创 MySQL笔记(1)

写在前面mysql在使用过程中的一些工具语句 - 显示当前服务器版本:select version(); - 显示当前日期时间:select now(); - 显示当前用户:select user(); - 跳转至当前数据库:use db_name; - 显示跳转至的数据库信息:select database(); - 显示服务器下的数据库列表:show {database|sch...

2018-07-16 22:30:05 133

原创 js中的闭包问题(持续更新)

闭包,是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。好啦说人话: “我的理解是,闭包就是能够读取其他函数内部变量的函数。”——–阮一峰相较官方文档而言阮一峰老师直接的多。不过由于js语言的特殊性使得不像其他面向对象语言一样拥有明确的类与对象的关系以及特殊的作用域,闭包的作用也就尤为重要了不过在此之前我们需要做一些铺垫。++不...

2018-06-20 00:13:38 336

转载 浅谈 instanceof 和 typeof 的实现原理

typeof 实现原理typeof 一般被用于判断一个变量的类型,我们可以利用 typeof 来判断number, string, object, boolean, function, undefined, symbol 这七种类型,这种判断能帮助我们搞定一些问题,比如在判断不是 object 类型的数据的时候,typeof能比较清楚的告诉我们具体是哪一类的类型。但是,很遗憾的一点是...

2018-06-17 10:44:06 12062

原创 Js中的对象&实例

对象StringtoString():返回字符串的数组表示(就个人理解toLocaleStrig()和toString()无明显差别)valueOf():返回 Boolean 对象的原始值charAt()返回在指定位置的字符concat()连接字符串indexOf()检索字符串lastIndexOf()从后向前搜索字符串match()找到一个或多个正则表达式的匹配rep...

2018-06-09 14:30:26 1749 2

原创 JavaScript闭包专题

闭包就是携带状态的函数,并且它的状态可以完全对外隐藏起来没看懂?我也是。不过我找到一种更加通俗但是可能不太全面的说法:闭包就是能够读取其他函数内部变量的函数,也就是说,我们可以简单的理解为:“++闭包是定义在一个函数内部的函数++”由于在Javascript语言中,只有函数内部的子函数才能读取局部变量,因此可以把闭包简单理解成”定义在一个函数内部的函数”。所以,在本质上,闭包就是将函数内...

2018-06-02 22:36:53 179

转载 JavaScript中this指向问题

this是在运行时绑定的。函数调用方式的不同就可能使this所绑定的对象不同一.几种绑定规则Ⅰ.默认绑定一般情况下,若无其他规则出现则默认将this绑定到全局对象上function foo(){ var a = 3; console.log(a);}var a = 2;foo(); //2//foo()在调用时使用不带任何修饰的函...

2018-05-26 17:21:33 564

空空如也

空空如也

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

TA关注的人

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