博客园 - 南山老幺
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=3531
2017-08-09T02:14:27Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
feed.cnblogs.com
https://www.cnblogs.com/nanshanlaoyao/p/7323764.html
关于前后端分离我的理解 - 南山老幺
前后端分离应该借助node,因为node可以拥有自己的服务(当然这不是使用node的原因,node本身拥有的高并发能力才是亮点),前后端各有自己的服务,前端服务处理前端的逻辑(相当于在后端之前有一套处理的东西,通过node的服务会有一些请求到我们的后端服务上),后端更加‘纯’的完成他们的工作(个人的
2017-08-09T02:14:00Z
2017-08-09T02:14:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】前后端分离应该借助node,因为node可以拥有自己的服务(当然这不是使用node的原因,node本身拥有的高并发能力才是亮点),前后端各有自己的服务,前端服务处理前端的逻辑(相当于在后端之前有一套处理的东西,通过node的服务会有一些请求到我们的后端服务上),后端更加‘纯’的完成他们的工作(个人的 <a href="https://www.cnblogs.com/nanshanlaoyao/p/7323764.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/7323770.html
模块化方案esl以及amd的依赖方式 - 南山老幺
来自 "AMD设计思想" 的总结和思考 在之前了解es6模块化的时候有遇到过依赖循环的问题,在es6中对于模块是引用性的,而当时于es6模块化做对比的commonjs(CMD规范)对于模块是值类型(会将其缓存下来),所以面对循环依赖的时候,利用es6的模块化机制并不会报错。 AMD中依赖的种类 装载
2017-08-09T02:14:00Z
2017-08-09T02:14:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】来自 "AMD设计思想" 的总结和思考 在之前了解es6模块化的时候有遇到过依赖循环的问题,在es6中对于模块是引用性的,而当时于es6模块化做对比的commonjs(CMD规范)对于模块是值类型(会将其缓存下来),所以面对循环依赖的时候,利用es6的模块化机制并不会报错。 AMD中依赖的种类 装载 <a href="https://www.cnblogs.com/nanshanlaoyao/p/7323770.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/7323752.html
node 内存管理相关 - 南山老幺
为什么在node中要担心node内存管理 使用JavaScript进行前端开发时几乎完全不需要关心内存管理问题,对于前端编程来说,V8限制的内存几乎不会出现用完的情况,v8在node中有着内存的限制(64位1.4GB;32位0.7GB),由于后端程序往往进行的操作更加复杂,并且长期运行在服务器不重启
2017-08-09T02:12:00Z
2017-08-09T02:12:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】为什么在node中要担心node内存管理 使用JavaScript进行前端开发时几乎完全不需要关心内存管理问题,对于前端编程来说,V8限制的内存几乎不会出现用完的情况,v8在node中有着内存的限制(64位1.4GB;32位0.7GB),由于后端程序往往进行的操作更加复杂,并且长期运行在服务器不重启 <a href="https://www.cnblogs.com/nanshanlaoyao/p/7323752.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6686568.html
koa-中间件流程控制 - 南山老幺
koa中间件执行流程 koa中间件的的执行顺序是洋葱模型,外层逐步向内,执行到最中间再逐步向外扩展,实现这个顺序的模型需要依赖于generator函数,它可以暂停执行将控制权交出,等到执行next再得到执行权继续执行,我们需要做的就是将generator串联起来,将后面的generator函数跟在上
2017-04-09T13:39:00Z
2017-04-09T13:39:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】koa中间件执行流程 koa中间件的的执行顺序是洋葱模型,外层逐步向内,执行到最中间再逐步向外扩展,实现这个顺序的模型需要依赖于generator函数,它可以暂停执行将控制权交出,等到执行next再得到执行权继续执行,我们需要做的就是将generator串联起来,将后面的generator函数跟在上 <a href="https://www.cnblogs.com/nanshanlaoyao/p/6686568.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6675569.html
关于移动端的一些tip - 南山老幺
移动端的一些tip 开发相关 关于viewport 当我们的网页不使用viewport的时候网页在移动端显示的时候基本上看不清楚字体,为什么呢?因为我们将960px(当我们不做设置的时候viewport会自动的把我们的html给规定成980px)的内容压缩到320dpx(非css单位,在移动端中1p
2017-04-06T13:36:00Z
2017-04-06T13:36:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】移动端的一些tip 开发相关 关于viewport 当我们的网页不使用viewport的时候网页在移动端显示的时候基本上看不清楚字体,为什么呢?因为我们将960px(当我们不做设置的时候viewport会自动的把我们的html给规定成980px)的内容压缩到320dpx(非css单位,在移动端中1p <a href="https://www.cnblogs.com/nanshanlaoyao/p/6675569.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6666677.html
我不知道的promise - 南山老幺
promise在resolve之后 再抛出错误并不会被捕获,等于没有抛出,个人理解是状态改变之后就不会再次改变。 错误具有冒泡的特性,会一直向后传递,直到被捕获为止,但是不会冒泡到全局。跟传统的try catch 语句不同的是,如果没有使用catch 语句指定错误处理的回调函数,promise 对象
2017-04-04T14:03:00Z
2017-04-04T14:03:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】promise在resolve之后 再抛出错误并不会被捕获,等于没有抛出,个人理解是状态改变之后就不会再次改变。 错误具有冒泡的特性,会一直向后传递,直到被捕获为止,但是不会冒泡到全局。跟传统的try catch 语句不同的是,如果没有使用catch 语句指定错误处理的回调函数,promise 对象 <a href="https://www.cnblogs.com/nanshanlaoyao/p/6666677.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6613617.html
Cache-Control头 - 南山老幺
介绍 Cache Control头在HTTP中有一定的难度,第一它既可以用于请求头,也可以用于响应头(这里主要将响应缓存)。第二,它控制着两个缓存, 本地缓存 :指客户端本地及其中的缓存(大多指浏览器缓存),但是它完全不受控制,通常浏览器会自己决定是否把某些内容放到缓存中,同时用户也可以自己处理缓存
2017-03-24T13:51:00Z
2017-03-24T13:51:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】介绍 Cache Control头在HTTP中有一定的难度,第一它既可以用于请求头,也可以用于响应头(这里主要将响应缓存)。第二,它控制着两个缓存, 本地缓存 :指客户端本地及其中的缓存(大多指浏览器缓存),但是它完全不受控制,通常浏览器会自己决定是否把某些内容放到缓存中,同时用户也可以自己处理缓存 <a href="https://www.cnblogs.com/nanshanlaoyao/p/6613617.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6426012.html
HTML5通信 - 南山老幺
跨文档消息传输 HTML5中提供了在网页文档之间互相接收与发送信息的功能。使用这个功能只要获取到网页所在窗口对象的实例,无论是否同源都可以实现跨域通信。经常用于不同frame之间的通信。 当我们想要接受从其他的窗口发过来的消息,就必须对窗口对象的message事件进行监视,代码如下 使用window
2017-02-21T12:17:00Z
2017-02-21T12:17:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】跨文档消息传输 HTML5中提供了在网页文档之间互相接收与发送信息的功能。使用这个功能只要获取到网页所在窗口对象的实例,无论是否同源都可以实现跨域通信。经常用于不同frame之间的通信。 当我们想要接受从其他的窗口发过来的消息,就必须对窗口对象的message事件进行监视,代码如下 使用window <a href="https://www.cnblogs.com/nanshanlaoyao/p/6426012.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6423049.html
HTML5离线应用 - 南山老幺
本地缓存与浏览器缓存 本地缓存是为整个web应用程序服务的而网页缓存值服务与单个网页 本地缓存是为你指定的资源进行缓存,而我们不知道网页缓存会春初哪些内容,他是不安全不可靠的 在没有网络的时候还是可以访问到以缓存的对应的站点页面,其中这些文件可以包括html,js,css,img等等文件,但其实即使
2017-02-21T02:57:00Z
2017-02-21T02:57:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】本地缓存与浏览器缓存 本地缓存是为整个web应用程序服务的而网页缓存值服务与单个网页 本地缓存是为你指定的资源进行缓存,而我们不知道网页缓存会春初哪些内容,他是不安全不可靠的 在没有网络的时候还是可以访问到以缓存的对应的站点页面,其中这些文件可以包括html,js,css,img等等文件,但其实即使 <a href="https://www.cnblogs.com/nanshanlaoyao/p/6423049.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6407368.html
单页应用SPA的路由 - 南山老幺
关于单页应用 单页Web应用(single page web application,SPA),就是只有一张Web页面的应用,是加载单个HTML 页面并在用户与应用程序交互时动态更新该页面的Web应用程序。简单来说就是用户只需要加载一次页面就可以不再请求,当点击其他子页面时只会有相应的URL改变而不
2017-02-16T11:58:00Z
2017-02-16T11:58:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】关于单页应用 单页Web应用(single page web application,SPA),就是只有一张Web页面的应用,是加载单个HTML 页面并在用户与应用程序交互时动态更新该页面的Web应用程序。简单来说就是用户只需要加载一次页面就可以不再请求,当点击其他子页面时只会有相应的URL改变而不 <a href="https://www.cnblogs.com/nanshanlaoyao/p/6407368.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6402721.html
网络爬虫与搜索引擎优化(SEO) - 南山老幺
爬虫及爬行方式 爬虫有很多名字,比如web机器人、spider等,它是一种可以在无需人类干预的情况下自动进行一系列web事务处理的软件程序。web爬虫是一种机器人,它们会递归地对各种信息性的web站点进行遍历,获取第一个web页面,然后获取那个页面指向的所有的web页面,依次类推。因特网搜索引擎使用
2017-02-15T10:21:00Z
2017-02-15T10:21:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】爬虫及爬行方式 爬虫有很多名字,比如web机器人、spider等,它是一种可以在无需人类干预的情况下自动进行一系列web事务处理的软件程序。web爬虫是一种机器人,它们会递归地对各种信息性的web站点进行遍历,获取第一个web页面,然后获取那个页面指向的所有的web页面,依次类推。因特网搜索引擎使用 <a href="https://www.cnblogs.com/nanshanlaoyao/p/6402721.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6371452.html
web开发的性能准则(减少页面加载时间方面) - 南山老幺
准则(概述) 减少 HTTP 请求 使用CDN加速 避免空的src或href属性值 增加过期头 启GZIP压缩 把css文件放到头部 把javascript放到尾部 避免使用css表达式 删除不使用的css语句 对javascript、css代码进行压缩 减少重绘 减少HTTP请求 减少HTTP请求
2017-02-06T10:38:00Z
2017-02-06T10:38:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】准则(概述) 减少 HTTP 请求 使用CDN加速 避免空的src或href属性值 增加过期头 启GZIP压缩 把css文件放到头部 把javascript放到尾部 避免使用css表达式 删除不使用的css语句 对javascript、css代码进行压缩 减少重绘 减少HTTP请求 减少HTTP请求 <a href="https://www.cnblogs.com/nanshanlaoyao/p/6371452.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6347842.html
HTTP - cookie - 南山老幺
用户识别的技术 当你访问一个站点时,这个服务器如何来判断这个用户是谁呢?我们可能会第一个想到使用cookie,在写cookie之前,我们先来看看其他几种识别技巧。 承载用户信息的HTTP首部。 可以从From、User Agent、Referer、Auehorization等首部来将用户的信息在请求
2017-01-24T13:16:00Z
2017-01-24T13:16:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】用户识别的技术 当你访问一个站点时,这个服务器如何来判断这个用户是谁呢?我们可能会第一个想到使用cookie,在写cookie之前,我们先来看看其他几种识别技巧。 承载用户信息的HTTP首部。 可以从From、User Agent、Referer、Auehorization等首部来将用户的信息在请求 <a href="https://www.cnblogs.com/nanshanlaoyao/p/6347842.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6346695.html
HTTP -- 缓存 - 南山老幺
关于缓存 什么是缓存 缓存这个东西真的是无处不在, 有浏览器端的缓存, 有服务器端的缓存,有代理服务器的缓存, 有ASP.NET页面缓存,对象缓存。 数据库也有缓存, 等等。http中具有缓存功能的是浏览器缓存,以及缓存代理服务器。http缓存的是指:当Web请求抵达缓存时, 如果本地有“已缓存的”
2017-01-24T03:09:00Z
2017-01-24T03:09:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】关于缓存 什么是缓存 缓存这个东西真的是无处不在, 有浏览器端的缓存, 有服务器端的缓存,有代理服务器的缓存, 有ASP.NET页面缓存,对象缓存。 数据库也有缓存, 等等。http中具有缓存功能的是浏览器缓存,以及缓存代理服务器。http缓存的是指:当Web请求抵达缓存时, 如果本地有“已缓存的” <a href="https://www.cnblogs.com/nanshanlaoyao/p/6346695.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6265865.html
新的博客地址 - 南山老幺
- 此博客不再更新,2017 以后的博客请访问 http://www.jiaoguibin.top - 这里只保存着2017年以前的博客 欢迎访问 - 谢谢
2017-01-09T09:01:00Z
2017-01-09T09:01:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】- 此博客不再更新,2017 以后的博客请访问 http://www.jiaoguibin.top - 这里只保存着2017年以前的博客 欢迎访问 - 谢谢 <a href="https://www.cnblogs.com/nanshanlaoyao/p/6265865.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6113300.html
mongodb 的命令操作(转) - 南山老幺
成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操作。 输入help可以看到基本操作命令: show dbs:显示数据库列表 show collections:显示当前数据库中的集合(类似关系数据库中的表) show users:显示用户 use <db name
2016-11-29T05:44:00Z
2016-11-29T05:44:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操作。 输入help可以看到基本操作命令: show dbs:显示数据库列表 show collections:显示当前数据库中的集合(类似关系数据库中的表) show users:显示用户 use <db name <a href="https://www.cnblogs.com/nanshanlaoyao/p/6113300.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/6036607.html
低调的css3属性font-size-adjust - 南山老幺
在我们日常的项目中经常会用到不同的字体来达到我们想要的效果,可是某些情况下不同字体的大小在相同的px下显示的大小是不同的 在火狐下的显示效果如下 可以看到同样是16px的字体显示到浏览器中缺大小不一,可能会是原来安排好的页面布局产生混乱,这是最令人难过的事情了。那么: 给每个css中添加了不同的fo
2016-11-06T14:05:00Z
2016-11-06T14:05:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】在我们日常的项目中经常会用到不同的字体来达到我们想要的效果,可是某些情况下不同字体的大小在相同的px下显示的大小是不同的 在火狐下的显示效果如下 可以看到同样是16px的字体显示到浏览器中缺大小不一,可能会是原来安排好的页面布局产生混乱,这是最令人难过的事情了。那么: 给每个css中添加了不同的fo <a href="https://www.cnblogs.com/nanshanlaoyao/p/6036607.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/5993393.html
HTML5对表单的约束验证 - 南山老幺
在HTML5中增加了许多新的功能,用于表单提交到服务器之前对表单进行数据的验证(抢了javascript的饭碗),有了这些功能,即便是javascript没有加载进来还是可以确保基本的验证。换句话说,浏览器自己会根据标记中的规则执行验证,然后自己显示适当的错误消息。当然,这些功能既然是来自HTML5
2016-10-24T08:07:00Z
2016-10-24T08:07:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】在HTML5中增加了许多新的功能,用于表单提交到服务器之前对表单进行数据的验证(抢了javascript的饭碗),有了这些功能,即便是javascript没有加载进来还是可以确保基本的验证。换句话说,浏览器自己会根据标记中的规则执行验证,然后自己显示适当的错误消息。当然,这些功能既然是来自HTML5 <a href="https://www.cnblogs.com/nanshanlaoyao/p/5993393.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/5964730.html
clientHeight , scrollHeight , offsetHeight之间的区别及兼容方案 - 南山老幺
clientHeight , scrollHeight , offsetHeight相信每个人都用过,可是每次用都要查一下到底哪个是文档大小哪个是视口大小,还有头疼的兼容问题。 先来官方的了解一下这三个属性: clientHeight:元素客户区的大小,指的是元素内容及其边框所占据的空间大小(经过实
2016-10-15T08:38:00Z
2016-10-15T08:38:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】clientHeight , scrollHeight , offsetHeight相信每个人都用过,可是每次用都要查一下到底哪个是文档大小哪个是视口大小,还有头疼的兼容问题。 先来官方的了解一下这三个属性: clientHeight:元素客户区的大小,指的是元素内容及其边框所占据的空间大小(经过实 <a href="https://www.cnblogs.com/nanshanlaoyao/p/5964730.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nanshanlaoyao/p/5960560.html
关于word-break和word-wrap的使用和区别 - 南山老幺
这个问题的开始于我对中文和英文之前区别的一个疏忽(中文是一个字就是一个单词,而英文字母要有一个空格才将他们分割为一个单词); 我们看到有三段文字,本意是将他们划分为三个块,并列排列,结果是这样的: 文字部分没问题,可是英文字母的部分把盒子模型撑的不像样,原因其实很简单就是我上面说的,它们把英文字母当
2016-10-14T07:11:00Z
2016-10-14T07:11:00Z
南山老幺
https://www.cnblogs.com/nanshanlaoyao/
【摘要】这个问题的开始于我对中文和英文之前区别的一个疏忽(中文是一个字就是一个单词,而英文字母要有一个空格才将他们分割为一个单词); 我们看到有三段文字,本意是将他们划分为三个块,并列排列,结果是这样的: 文字部分没问题,可是英文字母的部分把盒子模型撑的不像样,原因其实很简单就是我上面说的,它们把英文字母当 <a href="https://www.cnblogs.com/nanshanlaoyao/p/5960560.html" target="_blank">阅读全文</a>