自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 严格模式和非严格模式之间的区别

1、在严格模式中禁止使用with语句。2、在严格模式中,所有的变量都要先声明,如果给一个未声明的变量、函数、函数参数、catch从句参数或全局对象的属性赋值,将会抛出一个引用错误(在非严格模式中,这种隐式声明的全局变量的方法是给全局对象新添加一个新属性)。3、在严格模式中,调用的函数(不是方法)中的一个this值是undefined。(在非严格模式中,调用的函数中的this值总是全局对象)

2017-10-10 15:20:54 3428 1

原创 《深入浅出node.js》——setImmediate()与process.nextTick()

setImmediate()方法与process.nextTick()方法十分类似,都是将回调函数延迟执行。但是两者之间其实是有细微差别的:    process.nextTick()中的回调函数执行的优先级要高于setImmediate()。这里的原因在于事件循环对观察者的检查是有先后顺序的,process.nextTick()属于idle观察者,setImmediate()属于chec

2017-10-08 11:15:33 1271

转载 细说setTimeout/setImmediate/process.nextTick的区别

node.js中的非IO的异步API提供了四种方法,分别为setTimeOut(),setInterval(),setImmediate()以及process.nextTick(),四种方法实现原理相似,但达到的效果略有区别:一、事件循环Event Loop首先,我们需要了解node.js的基于事件循环的事件模型,正是因为它才使得node.js中回调函数十分普遍,也正是基于此,no

2017-10-01 11:16:26 737

转载 JavaScript:['1','2','3'].map(parseInt)问题解析

最近碰到了[‘1’,’2’,’3’].map(parseInt)这种看似不起眼陷阱却极大的问题。这乍一看,感觉应该会输出[1,2,3]。但是,实际上并不是我们想的这样。你可以现在打开console,看看输出的结果。出乎意料结果竟然是[1,NaN,NaN].至于为什么是这样,下面一步一步的解释。parseInt()parseInt是JS的一个内置函数,它可以将

2017-09-28 15:58:35 955

转载 尝试解析js面试题(二)

说明:一共有13题(原本14题,最后一道什么鬼,嫌弃不要了),覆盖面比较广,都属于比较烧脑的类型,各种神坑;不过对于夯实js理论基础帮助非常大;看看都能做对几题吧(

2017-09-28 15:52:15 355

转载 尝试解析js面试题(一)

解析:1、Foo.getName(); //21)结果执行的是Foo对象的一个叫做getName()的属性,而1、4、5中的getName都是作为函数存在,所以可以排除1、4、52)剩下两个中,2是Foo对象自身的属性,3是Foo对象原型链上的属性,而自身属性的优先级高于原型链上的属性,所以执行结果是22、getName(); //41)结果执行的是getN

2017-09-28 15:51:16 456

转载 操作系统内存管理的一些算法

在内存管理中存在这两类算法:一类是内存分配算法,一类是页面置换算法内存分配算法:是指怎么从连续的逻辑地址空间上分配内存地址给进程。常见内存分配算法及优缺点如下:   (1)首次适应算法。使用该算法进行内存分配时,从空闲分区链首开始查找,直至找到一个能满足其大小要求的空闲分区为止。然后再按照作业的大小,从该分区中划出一块内存分配给请求者,余下的空闲分区仍留在空闲分区链中。  

2017-09-27 16:46:31 1193

转载 什么是闭包?闭包的优缺点?

闭包(closure)是javascript的一大难点,也是它的特色。很多高级应用都要依靠闭包来实现。1、变量作用域要理解闭包,首先要理解javascript的特殊的变量作用域。变量的作用域无非就两种:全局变量和局部变量。javascript语言的特别之处就在于:函数内部可以直接读取全局变量,但是在函数外部无法读取函数内部的局部变量。注意点:在函数内部声明变

2017-09-27 16:45:13 344

转载 cookie和session

作者:任云肖链接:https://www.zhihu.com/question/19786827/answer/151015728Session是什么用途定义Session和cookie的区别与联系session的实现原理浏览器禁用cookie后如何实现sessionURL地址重写如何通过URL地址重写实现session的id传输session和co

2017-09-27 13:22:33 298

转载 缺页中断——FIFO、LRU、OPT这三种置换算法

1. 缺页中断  在请求分页系统中,可以通过查询页表中的状态位来确定所要访问的页面是否存在于内存中。每当所要访问的页面不在内存时,会产生一次缺页中断,此时操作系统会根据页表中的外存地址在外存中找到所缺的一页,将其调入内存。   缺页本身是一种中断,与一般的中断一样,需要经过4个处理步骤:   1. 保护CPU现场   2. 分析中断原因    3. 转入缺页中断处理程序进行

2017-09-23 20:57:47 491

转载 常见数据结构查找、插入、删除、遍历性能比较 常见排序算法的比较(图)

排序法 平均时间最差情形稳定度额外空间备注冒泡 O(n2)  O(n2) 稳定O(1)n小时较好交换  O(n2)  O(n2)不稳定O(1)n小时较好选择

2017-09-23 20:35:19 750

原创 n级阶梯,每次走一步或两步,问最多有多少种走法

题目:n级阶梯,每次走一步或两步,问最多有多少种走法。思路:递归思想        假设f(n)代表n级阶梯的走法,f(0)=1,f(1)=1。        当n大于1时,假设第一步走1级,剩下n-1级阶梯,f(n-1)种走法;假设第一步走2级,剩下n-2级阶梯,f(n-2)种走法,所以f(n)=f(n-1)+f(n-2)。代码:function step(n){//

2017-09-22 19:28:27 1951

转载 47种常见的浏览器兼容性问题大汇总

浏览器兼容性问题大汇总Ø JavaScript 31. HTML对象获取问题 32. const问题 33. event.x与event.y问题 34. window.location.href问题 35. frame问题 36. 模态和非模态窗口问题 37. firefox与IE的父元素(parentElement)的区别 38

2017-09-22 13:14:44 729

转载 探讨跨域请求资源的几种方式

探讨跨域请求资源的几种方式什么是跨域JSONPproxy代理corsxdr  由于浏览器同源策略,凡是发送请求url的协议、域名、端口三者之间任意一与当前页面地址不同即为跨域。具体可以查看下表(来源)    JSONP  这种方式主要是通过动态插入一个script标签。浏览器对script的资源引用没有同源限制,同时资源加载到页面后会立即执行(没

2017-09-21 10:16:17 454

转载 HTML渲染过程详解

转自:http://www.cnblogs.com/dojo-lzz/p/3983335.html        无意中看到寒冬关于前端的九个问题,细细想来我也只是对第一、二、九问有所了解,正好也趁着这个机会梳理一下自己的知识体系。由于本人对http协议以及dns对url的解析问题并不了解,所以这里之探讨url请求加载到浏览器端时,浏览器对html的解析到呈现过程,后来经过几位

2017-09-21 10:05:51 412

原创 前端面试题——js闭包

要求:利用闭包原理模拟计数器function count(){ //...}var f = count();f(); //输出1f(); //输出2f(); //输出3...答案:function count(){ var i=0; return function(){ console.log(++i); }}

2017-09-21 07:56:35 817

转载 正则表达式中 test、exec、match 方法区别

一、String对象支持四种利用正则表达式的方法,分别为search(),replace(),match(),split()1、search()方法以正则表达式作为参数,返回第一个与之匹配的子串开始的位置,如果没有任何与之匹配的子串,它返回-1。 2、replace()方法执行检索和替换操作,它的第一个参数是正则表达式,第二个参数是要进行替换的字符串或者闭包。 3、 mat

2017-09-20 13:34:27 625

转载 理解Javascript_07_理解instanceof实现原理

在《Javascript类型检测》一文中讲到了用instanceof来用做检测类型,让我们来回顾一下: 那么instanceof的这种行为到底是如何实现的呢,现在让我们揭开instanceof背后的迷雾。 instanceof原理照惯例,我们先来看一段代码:1234567

2017-09-20 00:51:44 408

转载 前端精选文摘:BFC 神奇背后的原理

BFC 已经是一个耳听熟闻的词语了,网上有许多关于 BFC 的文章,介绍了如何触发 BFC 以及 BFC 的一些用处(如清浮动,防止 margin 重叠等)。虽然我知道如何利用 BFC 解决这些问题,但当别人问我 BFC 是什么,我还是不能很有底气地解释清楚。于是这两天仔细阅读了CSS2.1 spec 和许多文章来全面地理解BFC。一、BFC是什么?  在解释 BFC 是什么之前,需要

2017-09-19 16:53:38 383

转载 详解css盒模型与外边距重叠

盒模型的构成之前写了一篇关于如何解决css的外边距重叠问题,可是后来发现,我有些本末倒置了,对于一个问题的正确的处理流程就应该是先发现问题,分析问题,解决问题,所以我在这篇文章中就对下css的盒模型,什么是外边距重叠,为什么会发生外边距重叠,以及怎样计算外边距重叠一一进行解读,旨在透过现象看本质,达到掌握的目的.文章可能会有点长,为节省时间大家可以根据掌握的情况浏览阅读.1.结构

2017-09-19 16:52:16 621

转载 数据库事务的四大特性以及事务的隔离级别

本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。  如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:⑴ 原子性(Atomicity)  原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响

2017-09-18 09:12:12 391

转载 js中几种实用的跨域方法原理详解

这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据。只要协议、域名、端口有任何一个不同,都被当作是不同的域。下表给出了相对http://store.company.com/dir/page.html同源检测的结果:要解决跨域的问题,我们可以使用以下几种方法:一

2017-09-18 01:20:45 404

转载 window.location.href和window.open的几种用法和区别

阅读目录一、location.href常见的几种形式二、location.href不同形式之间的区别三、location.href总结四、window.location.href和window.open的区别使用js的同学一定知道js的location.href的作用是什么,但是在js中关于location.href的用法究竟有哪几种,究竟有哪些区别,估计很多人都不知道了。

2017-09-18 01:07:12 734

转载 js中cookie的使用详细分析

cookie概述 cookie 是浏览器提供的一种机制,它将document 对象的cookie属性提供给JavaScript。可以由JavaScript对其进行控制,而并不是JavaScript本身的性质。cookie是 存于用户硬盘的一个文件,这个文件通常对应于一个域名,当浏览器再次访问这个域名时,便使这个cookie可用。因此,cookie可以跨越一个域名下的 多个网页,但不能跨越多

2017-09-18 00:55:35 507

转载 js操作cookie方法

cookiecookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。定义于RFC2109和2965都已废弃,最新取代的规范是RFC6265。cookie的作用服务器可以利用Cookies包含信息的任意性来筛选并经常性维护这些信息,以判断在HTTP传输中的状态。Cookies最典型的应用是

2017-09-18 00:43:36 370

转载 session、cookie与“记住我的登录状态”的功能的实现

session、cookie与“记住我的登录状态”的功能的实现Cookie的机制Cookie是浏览器(User Agent)访问一些网站后,这些网站存放在客户端的一组数据,用于使网站等跟踪用户,实现用户自定义功能。Cookie的Domain和Path属性标识了这个Cookie是哪一个网站发送给浏览器的;Cookie的Expires属性标识了Cookie的有 效时间,当Cooki

2017-09-18 00:33:20 546

转载 html,css,js加载顺序

1.js放在head中会立即执行,阻塞后续的资源下载与执行。因为js有可能会修改dom,如果不阻塞后续的资源下载,dom的操作顺序不可控。  正常的网页加载流程是这样的。浏览器一边下载HTML网页,一边开始解析解析过程中,发现标签暂停解析,网页渲染的控制权转交给JavaScript引擎如果标签引用了外部脚本,就下载该脚本,否则就直接执行执行完毕,控制权交还渲染引擎,恢复往下解析HT

2017-09-17 11:07:16 526

转载 JavaScript 事件模型 事件处理机制

这篇文章对于了解Javascript的事件处理机制非常好,将它全文转载于此,以备不时之需。什么是事件?事件(Event)是JavaScript应用跳动的心脏 ,也是把所有东西粘在一起的胶水。当我们与浏览器中 Web 页面进行某些类型的交互时,事件就发生了。事件可能是用户在某些内容上的点击、鼠标经过某个特定元素或按下键盘上的某些按键。事件还可能是 Web 浏览器中发生的事情,比如说某

2017-09-16 13:53:01 621

转载 从输入url到页面展示到底发生了什么

这篇文章很多都是参考别人的,然后进行总结,并提供相应知识点的学习资料从输入url到页面展示总共经过如下几个过程:域名解析(获得IP地址)向WEB服务器发送HTTP请求服务器处理请求服务器返回HTTP响应浏览器显示页面信息一、输入地址当输入url地址后,浏览器已经在智能匹配地址了,会从历史记录、书签或缓存中查找,如果找到了,会从缓存中调出页面显示出来,在你还没有按“enter”之

2017-09-16 13:48:23 962

转载 HTTP缓存相关头

本文说的是HTTP中控制客户端缓存的头有哪些。网上这方面的文章很多了,这里就说下个人的理解。 在请求一个静态文件的时候(图片,css,js)等,这些文件的特点是文件不经常变化,将这些不经常变化的文件存储起来,对客户端来说是一个优化用户浏览体验的方法。那么这个就是客户端缓存的意义了。windows下客户端的缓存文件存放在临时文件夹中,但是这里有个问题就是这个缓存文件存放多久呢?这个是由服

2017-09-16 13:26:55 389

转载 TCP/IP、HTTP协议的区别

TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己

2017-09-16 13:18:51 346

转载 jQuery 事件委托

事件委托是通过事件冒泡的原理,利用父级去触发子级的事件。如下html,如果不用事件委托,将每一个li都去添加click事件监听,非常麻烦。另外就是如果通过js动态创建的子节点,需要重新绑定事件。而利用事件委托的话,只需要给父级绑定一个事件监听,即可让每个li都绑定上相应的事件。html item1 item2 item3 item4

2017-09-14 16:33:00 222

转载 js中的事件委托或是事件代理详解

起因:1、这是前端面试的经典题型,要去找工作的小伙伴看看还是有帮助的;2、其实我一直都没弄明白,写这个一是为了备忘,二是给其他的知其然不知其所以然的小伙伴们以参考;概述:那什么叫事件委托呢?它还有一个名字叫事件代理,JavaScript高级程序设计上讲:事件委托就是利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件。那这是什么意思呢?网上的各位大牛们

2017-09-14 16:25:57 210

原创 《JavaScript高级程序设计(第3版)》知识点笔记2

1、虽然ECMAScript数组与其他语言中的数组都是数据的有序列表,但与其他语言不同的是,ECMAScript数组的每一项可以保存任何类型的数据。也就是说,可以用数组的第一个位置来保存字符串,用第二位置来保存数值,用第三个位置来保存对象,以此类推。而且,ECMAScript数组的大小是可以动态调整的,即可以随着数据的添加自动增长以容纳新增数据。2、ECMAScript5新增了Arra

2017-09-14 12:41:58 288

转载 jsonp协议原理深度解析

前言今天在开发联调的过程中,需要跨域的获取数据,因为使用的jquery,当然使用dataType:'jsonp'就能够很easy的解决了。但是因为当时后端没有支持jsonp来访问,后来他在实现这个功能的时候问了我一句,jsonp形式返回的格式是怎么样子的?我一直以来只知道怎么使用,迷迷糊糊的却没有答上来。。。虽然后来解决了,但是对于喜欢解决问题的我,心里却一直耿耿于怀,必须得把

2017-09-13 23:40:57 250

转载 Ajax方式和jsonp的实现区别

大多数情况下,无论是框架还是自己实现都是通过Ajax的方式来向后端请求数据的,而Ajax之间是通过传输json格式的文件来进行数据的传输的,大家对Ajax也很熟悉了,那么为什么我又要使用jsonp呢?这就要从什么是jsonp,什么是json来说一说了。       json是一种格式,而jsonp是一种调用方式,那么在大家都使用Ajax的情况下为什么我不用呢?因为Ajax作为脚本出于安全的

2017-09-13 23:38:42 880

转载 JavaScript中call,apply,bind方法的总结。

why?call,apply,bind干什么的?为什么要学这个?  一般用来指定this的环境,在没有学之前,通常会有这些问题。var a = { user:"追梦子", fn:function(){ console.log(this.user); }}var b = a.fn;b(); //undefined我们是

2017-09-13 22:27:58 194

转载 理解HTTP之Content-Type

0x01.About查看Restful API 报头插件:Chrome插件REST Console,以及发送Restful API工具:Chrome插件POST Man在HTTP 1.1规范中,HTTP请求方式有OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE、CONNECT通常我们用的只有GET、POST,然而对于Restful API

2017-09-13 21:08:32 389

转载 操作系统——存储管理:分区、分页、分段、请求式分页和虚拟内存

1. 综述  突然把这么多概念弄到一起,让人有点儿困惑。自己的一些理解:  分区式管理:最简单直观的方式,在内存中分配一个区,将整个进程放入这个区。缺点是会产生外碎片,即时间长了会在分区之间产生难以被利用的小空间。  分页式管理:将内存分成固定大小的页,分配若干页将整个进程载入。页面可以不连续是其重要优点,不会产生外碎片,更有效地利用了内存,不过会产生一些内碎片,即分配给进

2017-09-12 08:45:07 1413

原创 《JavaScript高级程序设计(第3版)》知识点笔记1

1、JavaScript是一种专为网页交互而设计的脚本语言,由三个不同部分组成:    ECMAScript,提供核心语言功能    文档对象模型(DOM),提供访问和操作页面内容的方法和接口    浏览器对象模型(BOM),提供与浏览器交互的方法和接口2、HTML4.01为标签定义了defer属性。这个属性的用途是表明脚本在执行时不会影响页面的构造,也就是说,脚本会延迟到

2017-09-11 13:44:02 586

空空如也

空空如也

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

TA关注的人

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