代码改变世界

随笔分类 - Others

Nginx 配置简述

2016-11-25 10:14 by Barret李靖, 5401 阅读, 收藏, 编辑
摘要:不论是本地开发,还是远程到 Server 开发,还是给提供 demo 给人看效果,我们时常需要对 Nginx 做配置,Nginx 的配置项相当多,如果考虑性能配置起来会比较麻烦。不过,我们往往只是需要一个静态 Server,或者一个反向代理 Server,这对 Nginx 来说小菜一碟。 本文将给大 阅读全文

谈一谈我在阿里的成长

2016-10-25 18:14 by Barret李靖, 5836 阅读, 收藏, 编辑
摘要:前几天受阿里通信的同事邀请,分享了一个关于成长的话题。其实我不太热衷于分享此类话题,作为一个技术人,分享那些没有技术干货的内容总感觉有些怪怪的。但最后还是拟下了这个话题 ——《谈一谈我在阿里的成长》,所以本文主要是对分享的 PPT 做简述。 可以回首一下,毕业工作后的这段时间里,你做过哪些事情让自己 阅读全文

如何做好一名实习生

2016-10-04 08:33 by Barret李靖, 3022 阅读, 收藏, 编辑
摘要:最近看到有几个同事准备着转正,想借此机会聊一下实习生相关的话题——如何成为一名优秀的实习生。 公司为什么需要实习生 如果你认为公司招聘实习生,就是为了攫取优质的廉价劳动力,随意安排些杂七杂八的琐碎事,那可就大错特错了。 公司人才入口一般有两个渠道,社招和校招。社招成本向来都很高,得花大价钱好不容易抓 阅读全文

谈谈我这三年在技术上的成长

2016-07-23 09:38 by Barret李靖, 7509 阅读, 收藏, 编辑
摘要:前些时候把微信 id 开放了出去,有很多朋友加我微信,其中大部分都是前端学习者。一些同学在学习的时候遇到了困难,或者说瓶颈吧,询问我处理办法,有的希望我讲述下学习经验。考虑到有些话题偏大,我没有详细回复,事实上我也不知道从何说起,今天思量了一番,记录下来。 前些天写了一篇文章 《谈一谈越来越难做的前 阅读全文

工作五年,后面四年重复着第一年的活儿?

2016-07-22 10:38 by Barret李靖, 5617 阅读, 收藏, 编辑
摘要:当我们沉浸在旺盛的需求之中时,整个人便会成为一台工作的机器,切着类似的页面,写着同样的逻辑,重复着昨天或者上个月做的事情,时间久了,觉得腻味,没有什么创新,也没有明显的成长。用一句通俗的话来讲:工作五年,后面四年重复着第一年的活儿。 阅读全文

当前端也拥有 Server 的能力

2016-02-25 01:04 by Barret李靖, 3146 阅读, 收藏, 编辑
摘要:今天看了不少文章,比较感兴趣的是 Cache API。它是浏览器 Request/Response 的缓存管理工具,其使用风格和运用场景让我瞬间联想到了 ServiceWorker 和 Fetch API,相信很多同学也多次看到过这两个东西,本文会对它们做一个简洁的介绍,并谈一谈我对这些新玩具的看法 阅读全文

简述 OAuth 2.0 的运作流程

2016-01-12 23:19 by Barret李靖, 2463 阅读, 收藏, 编辑
摘要:本文将以用户使用 github 登录网站留言为例,简述 OAuth 2.0 的运作流程。假如我有一个网站,你是我网站上的访客,看了文章想留言表示「朕已阅」,留言时发现有这个网站的帐号才能够留言,此时给了你两个选择:一个是在我的网站上注册拥有一个新账户,然后用注册的用户名来留言;一个是使用 githu... 阅读全文

近几年前端技术盘点以及 2016 年技术发展方向

2016-01-09 10:33 by Barret李靖, 12696 阅读, 收藏, 编辑
摘要:Web 发展了几十个春秋,风起云涌,千变万化。我很庆幸自己没有完整地经历过这些年头,而是站在前人的肩膀上行走。Web 技术发展的速度让人感觉那几乎不是继承式的迭代,而是一次又一次的变革,一次又一次的创造。这几年的前端,更为之甚!我从 12 年底开始接触前端,12 年之前的前端发展情况只能从上一辈的笔... 阅读全文

新应用上线 Snippet

2015-09-29 10:18 by Barret李靖, 1831 阅读, 收藏, 编辑
摘要:Snippet 是一款代码片段收集工具,经过一天三夜的开发终于上线了。应用地址:snippets.barretlee.com源码地址:barretlee/snippets由于使用原生 JS 开发,效果利用 CSS3 实现,所以如果想有一个好的视觉体验,请使用 Chrome/FireFox 预览(后续... 阅读全文

这两天说到的苹果软件中毒是个什么情况?

2015-09-18 23:50 by Barret李靖, 2517 阅读, 收藏, 编辑
摘要:今天逛微博,看到了有人发现 apple 手机中的部分软件存在盗取账户信息的问题,网上搜罗了下信息,把大概的原因和处理方案说下。本文的阐述会比较浅显易懂。如何被感染的大家对这些盗取账户信息的行为称之为手机中毒,简单的说就是使用的软件中被非软件方通过某些手段植入了程序本不该有的代码,这些代码可以获取用户... 阅读全文

网站的SEO以及它和站长工具的之间秘密

2015-09-15 13:43 by Barret李靖, 2033 阅读, 收藏, 编辑
摘要:博客迁移没有注意 URL 地址的变化,导致百度和 google 这两只爬虫引擎短时间内找不到路。近段时间研究了下国内最大搜索引擎百度和国际最大搜索引擎google的站长工具,说下感受。百度的站长工具地址:http://zhanzhang.baidu.com/dashboard/indexgoogle... 阅读全文

博客已经迁移至 http://barretlee.com/entry/,时而同步分享到这里

2015-09-06 15:00 by Barret李靖, 4178 阅读, 收藏, 编辑
摘要:博客园是一个十分好的写作平台,不过个人比较喜欢倒腾,所以将文章都做了搬迁。 博客已经迁移至 http://barretlee.com/entry/ ,感谢一直以来的关注和支持。 博客订阅地址: http://barretlee.com/rss2.xml 阅读全文

按照这样的流程玩博客,最后都到了这里

2015-08-31 23:28 by Barret李靖, 2303 阅读, 收藏, 编辑
摘要:几天前,我已经把博客迁移到了 http://www.barretlee.com,而同样前几天看到 Nicholas C.Zakas 大师把自己的博客从 wordpress 迁移到了 jekyll,很巧的是我这几天也在干这件事情。不过我是迁移到 hexo,刚开始托管在 github,后来改到 gitc... 阅读全文

在线调试方案的思考与实践

2015-08-24 22:29 by Barret李靖, 3346 阅读, 收藏, 编辑
摘要:本文的要点不在移动端调试上,移动端调试无非就是调试页面和调试工具之间存在分离,消除这种分离并创建连结就能解决移动端的调试问题。重点阐述的是所见即所得的调试模式下会遇到的阻碍。当我们打开网页,发现一个模块没有正确地渲染或者空白时,如果控制台有报错,会直接根据报错定位到源码位置开始 debug;如果控制... 阅读全文

让浏览器不再显示 https 页面中的 http 请求警报

2015-08-21 11:08 by Barret李靖, 58596 阅读, 收藏, 编辑
摘要:HTTPS 是 HTTP over Secure Socket Layer,以安全为目标的 HTTP 通道,所以在 HTTPS 承载的页面上不允许出现 http 请求,一旦出现就是提示或报错:Mixed Content: The page at ‘https://www.taobao.com/‘ w... 阅读全文

iconfont的蜕化操作

2015-08-17 09:54 by Barret李靖, 3191 阅读, 收藏, 编辑
摘要:很多国外的网站,访问的时候可以看到,页面先是大面积白一下,然后恢复正常。原因是网页上用到了 webfont,这些页面很多情况都是直接引用 google 的 webfont 地址,中华大局域网下,由于网络原因,页面虽已经全部加载,引用的 webfont 资源却还未下载成功,这就导致了使用了 webfo... 阅读全文

细说 Data URI

2015-08-12 09:38 by Barret李靖, 8748 阅读, 收藏, 编辑
摘要:Data URL 早在 1995 年就被提出,那个时候有很多个版本的 Data URL Schema 定义陆续出现在 VRML 之中,随后不久,其中的一个版本被提上了议案——将它做个一个嵌入式的资源放置在 HTML 语言之中。从 RFC 文档定稿的时间来看(1998年),它是一个很受欢迎的发明。Da... 阅读全文

前端工程架构探讨

2015-05-03 12:56 by Barret李靖, 4892 阅读, 收藏, 编辑
摘要:回忆一下我们在工程开发中对目录结构的定义,一般分为两种,单页面多模块,多页面多模块。在单页面多模块的工程结构里,我们会考虑模块的复用性,比如:如何将公共的东西(样式、函数等)提取出来方便其他模块复用。在多页面多模块的场景中,也是一样,不过除了把全局共用的样式和方法提取到公共目录外,我们还会将多个地方... 阅读全文

对前端质量保障的思考

2015-04-24 00:24 by Barret李靖, 5709 阅读, 收藏, 编辑
摘要:我们时时在踩坑,有时也忍不住埋怨前人给我们留下了无数的坑,可回头想想,自己是不是也在挖坑等别人踩...上次听 赵海平 的讲座,他提到 Facebook 没有测试人员,以前和现在都没有,以后也不打算有。还提到上线之后就开发者坐在系统前等着,只要有bug,系统能够在五分钟之内检测到,并提供快捷方式修复。... 阅读全文

从Facebook跑来阿里的赵海平大叔,你要干啥?

2015-04-07 21:52 by Barret李靖, 6713 阅读, 收藏, 编辑
摘要:赵海平在今年三月份来到阿里,听毕玄(他现任主管)说去年五六月份就跟赵海平聊上了。有人问:为啥 BAT 三大巨头,你看中了阿里巴巴?在今天现场达一千多人的分享中赵海平给出了回复:“因为百度和腾讯没找我呗~”,他笑道,“百度以搜索为核心,优化了很多年了,估计也没啥可以优化的了;而腾讯除了 QQ 和微信,... 阅读全文

根据访问属性进行差异化数据加载

2015-04-03 17:53 by Barret李靖, 1124 阅读, 收藏, 编辑
摘要:判断用户是否第一次访问页面,先不说怎么做,想想什么场景下会用到?如果我们页面的体积过大,用户第一次访问,会消耗大量的时间(2-5s)去下载页面所需要的资源,给用户带来的体验是很不好的,尤其是移动端的用户。如果我们可以在用户第一次访问的时候只加载主要内容,在这个主要内容中引导用户做更多的加载资源的操作... 阅读全文

前人挖坑,后人填坑

2015-04-02 10:16 by Barret李靖, 6622 阅读, 收藏, 编辑
摘要:写代码不免出点 bug,没有人可以保证自己写的代码不出问题,而那些没有被挖掘出来的 bug,便成了后来者哭笑不得的坑...这段时间公司全面 https 改造,涉及到域名的迁移,域名的迁移不是 nginx 做个映射就完事儿了,还有各种代码的去 schema,各种组件的搬迁,算是一个大手术!我看最近百度... 阅读全文

谈谈D2

2014-11-01 11:32 by Barret李靖, 3700 阅读, 收藏, 编辑
摘要:很多参与了 D2 的人还不知道 D2 是个什么东西,印象中就是很多很多前端工程师汇聚在一起,交流技术。D2 是 D2前端技术论坛的简称,英文名 Designer & Developer Frontend Technology Forum。下面的介绍比较官方:D2 由「淘宝网」发起,每届由 D2 前端... 阅读全文

我在阿里这仨月

2014-10-30 21:54 by Barret李靖, 17055 阅读, 收藏, 编辑
摘要:Alibaba 试用期是三个月,转眼三个月过去了,也到了转正述职的时间。回想这三个月做过的事情,很多很杂,但还是有重点。本文谈一谈工作中遇到的各种场景,需要用到的一些前端知识,以及我对前端进阶学习的一点思考。一、漫谈刚入职不久阿里巴巴就上市了,这是件振奋人心的事情。实际上在正式入职之前,我就已经在淘... 阅读全文

PC远程调试移动设备

2014-08-29 00:15 by Barret李靖, 3155 阅读, 收藏, 编辑
摘要:我们在移动端进行前端开发时,会遇到一个让人头痛但不得不面对的问题——调试。在 PC 机器上,我们有功能强大的 Chrome DevTools、Firebug,即便是老版本的 IE ,我们也可以安装微软提供的插件,对网页样式和请求信息轻松进行调试。但在手机、平板上,很多人就无招可施了,一个劲的 ale... 阅读全文

谈谈前后端的分工协作

2014-08-03 01:06 by Barret李靖, 14493 阅读, 收藏, 编辑
摘要:前后端分工协作是一个老生常谈的大话题,很多公司都在尝试用工程化的方式去提升前后端之间交流的效率,降低沟通成本,并且也开发了大量的工具。但是几乎没有一种方式是令双方都很满意的。事实上,也不可能让所有人都满意。根本原因还是前后端之间的交集不够大,交流的核心往往只限于接口及接口往外扩散的一部分。这也是为什... 阅读全文

学习和面试,这两件事儿

2014-08-01 00:04 by Barret李靖, 6229 阅读, 收藏, 编辑
摘要:公司上班之后,可支配的时间少了,不能说学习的时间少了,在公司这个环境中,我们学到更多的不一定是技术,还有人和人之间的交往,也有职场的潜规则。技术学习和技术分享需要持之以恒,希望以后可以做到这点! 阅读全文

个人网站架构设计(三) - 从设计到前端到后台

2014-07-04 18:06 by Barret李靖, 9672 阅读, 收藏, 编辑
摘要:网站地址:http://barretlee.com在五月份,写过两篇博客,提到了要给自己做个网站,当时人在实习,没太多的时间,只是把大概的思路捋了一番,顺道也买了个云主机(配置比较低,内存才500M)。接着返校处理毕业事宜,于是六月也随着同学之间挥泪告别的声音渐渐远去。七月,家里呆着,中旬回公司。想... 阅读全文

个人网站架构设计(二)

2014-05-15 01:32 by Barret李靖, 4892 阅读, 收藏, 编辑
摘要:网站地址:http://barretlee.com昨天对网站的架构做了一个简要的分析,有些人不太理解,有了 NodeJS 还要 php 干啥?我推荐了几篇文章给这位童鞋看了:也谈基于NodeJS的全栈式开发(基于NodeJS的前后端分离)基于前后端分离的模版探索Midway-ModelProxy —... 阅读全文

个人网站架构设计(一)

2014-05-13 23:13 by Barret李靖, 9028 阅读, 收藏, 编辑
摘要:网站地址:http://barretlee.com从大二开始,坚持每月3到8篇的技术分享,到现在差不多两年了。一直在分享之中跟着大家一起进步,从最开始的点点网,到github,再到现在的博客园。分享是一件有趣的事情,能够收到很多的反馈,渐渐地,已经把写博当成一种习惯。在不同的平台上写博客会有不同的感... 阅读全文

Etag缓存在PHP和NodeJS中的实现

2014-05-11 19:26 by Barret李靖, 4223 阅读, 收藏, 编辑
摘要:HTTP 提供了许多页面缓存的方案,其中属 Etag 和 Last-Modified 应用最广。本文会先介绍 Etag 的应用场景,然后说说他在 php 和 node 中的使用。本文地址:http://www.cnblogs.com/hustskyking/p/etag-in-node.html,转... 阅读全文

git版本管理策略及相关技巧(A)

2014-05-07 21:00 by Barret李靖, 3741 阅读, 收藏, 编辑
摘要:公司几乎所有的项目都是使用 git 仓库来管理代码,以前对 git 只有些肤浅的了解,每次提交代码或者上线的时候总是会提心吊胆,生怕出现一些未知的问题。经过三个月的踩坑和填坑, git 操作颇显成熟。仅以此文回忆学习 git 的历史。本文地址:http://www.cnblogs.com/husts... 阅读全文

XSS零碎指南

2014-05-01 12:59 by Barret李靖, 6224 阅读, 收藏, 编辑
摘要:该文章是本人两天的学习笔记,共享出来,跟大家交流。知识比较零散,但是对有一定 JS 基础的人来说,每个小知识都有助于开阔你的 Hack 视角。首先声明,本文只是 XSS 攻击的冰山一角,读者自行深入研究。本文地址:http://www.cnblogs.com/hustskyking/p/xss-sn... 阅读全文

npm穿墙

2014-04-01 00:03 by Barret李靖, 7924 阅读, 收藏, 编辑
摘要:GWF 很给力,很多东西都能墙掉,但是把 npm 也纳入黑名单,不知道 GWFer 是怎么想的。翻墙翻了好多年了,原理其实也挺简单的,proxy 嘛!»方法一A)国内源,http://cnpmjs.org使用方式,你可以在 cmd 中键入 npm install -g cnpm,然后出去吃个饭,如果还没有安装好,那就换个方式:npm install -g cnpm --registry=http://r.cnpmjs.orgregistry 参数的作用就是指向需要 download 的仓库。 cnpm 跟国外的 npm 是同步的,只要 npm 有更新,cnpm 就会跟着一起更新。当然 阅读全文

[入园两周年,撒花~] 感想以及一些文章索引

2014-03-17 15:02 by Barret李靖, 1839 阅读, 收藏, 编辑
摘要:接触前端快三年了,记得是在大二的时候开始进博客园写博,三年的成长有两年得益于与各位前辈的交流和讨论。首先感谢博客园给我们提供了很好的交流平台,也祝博客园的建设越来越好!同时也感谢技术上擦过火花的小伙伴们,希望以后的日子里可以更多更深入的交流!一点学习经验以 Barret 这个名字混迹于不少 QQ 群中,时间比较久了,跟一些人也建立了比较好的友谊关系。在群里,不管是提问还是回答别人提出的问题,总能在未知领域找到属于自己的东西。现在还会经常在群里碰到学习前端的新人,他们有时提问抓不到关键词或者不知道如何形容自己的问题,这也让我看到了当初的自己,希望有经验的学习者可以包容这些人,耐心的回答他们提出的 阅读全文

软件(代码)开源,协议声明

2014-03-14 19:52 by Barret李靖, 2158 阅读, 收藏, 编辑
摘要:注意:对于协议有个大概的了解就行了,本文叙述不是很标准,如果要做具体了解,请戳文中给出的链接。关于开源协议网上有很多说明,不过写的都十分晦涩,让人木有读下去的欲望,下面给大家简单的科普一下。一般很少人关注代码开源的协议说明,我们平时看到的 MIT Apache BSD 等,一堆英文的缩写,也懒得去看具体的内容,这说明你的维权意识还不是很强。辛辛苦苦写了一堆代码,贴到某个分享区,啪一下被人家复制走了,然后别人改个名字,捎带加个协议,说是自己写的,一般情况下这种事情的发生我们可以忽视之,当如果这串代码被人家作为商用,成为挣钱利器,那个时候你后悔也来不及了。目前市面上看到的协议种类还是挺繁多的,同一 阅读全文

工作,但别忘了生活

2014-03-12 15:02 by Barret李靖, 2637 阅读, 收藏, 编辑
摘要:已经一点多了[昨晚写的],其实我现在挺累的,想去睡个觉,不过有些东西还是需要记录一下。人已经不在学校了,也不想谈太多学校里面的事情,社会和学校之间似乎有一层屏障,把很多东西都分隔开了。我挺喜欢学校,很自由,可以不慌不忙的支配时间。只是有些许内疚,大学没去好好支配时间。最近在看什么呢?《宏观经济学》、《心理学导论》、《税法》,当然也少不了一些技术书籍。这几天发生在我身边的事情让我感觉到,人特别渺小,尤其是缺乏知识的人,跟社会接轨的比较少,当走进社会之后就显得更渺小了。在学校,每个人都期望着找准自己的位置,寻找社会上适合自己的角色,一些人找到了,还有一些人,继续留在学校,他们或许找到了自己的定位, 阅读全文

git/ssh捋不清的几个问题

2014-03-11 23:09 by Barret李靖, 12398 阅读, 收藏, 编辑
摘要:主要是 windows 用户会遇到很多纠结的问题,linux/unix 用户属于这方面的高端用户,应该有能力处理此类问题,而且网络上也有很多解决方案,本文的授众是 windows 用户。由于今天配置了一下午,虽说配置过程基本搞清楚,懒得重新配置一遍,所以文中皆以文字形式叙述,没有截图。本文地址:http://www.cnblogs.com/hustskyking/p/problems-in-git-when-ssh.html,转载请注明源地址。一、概念的解释1. rsa 与 rsa.pub网上很容易搜到的东西我就不说了,我们知道,通过:ssh-keygen -t rsa -C "so 阅读全文

再探@font-face及webIcon制作

2014-01-27 01:50 by Barret李靖, 4731 阅读, 收藏, 编辑
摘要:@font-face 不能说他是什么新东西了,在 CSS2.0 规范中就有了这玩意儿,IE4.0 开始就已经出现,只是当时用的不是特别广泛,后来在 CSS2.1 草案中又被删掉。随着 web 的急速发展,@font-face 价值越来越凸显,然后再次被纳入 CSS3 草案中。@font-face 是个什么东西,本文不做过多说明,不太清楚的童鞋可以看这里 http://www.w3schools.com/css/css3_fonts.asp。需要强调的是他的书写格式:@font-face { font-family: ; src: [][, []]*; [font-weigh... 阅读全文

进阶正则表达式

2014-01-18 00:32 by Barret李靖, 15337 阅读, 收藏, 编辑
摘要:关于正则表达式,网上可以搜到一大片文章,我之前也搜集了一些资料,并做了排版整理,可以看这篇文章http://www.cnblogs.com/hustskyking/archive/2013/06/04/RegExp.html,作为基础入门讲解,这篇文章说的十分到位。记得最开始学习正则,是使用 php 做一个爬虫程序。为了获取指定的信息,必须用一定的方式把有规律的数据匹配出来,而正则是首选。下面是当时写的爬虫程序的一个代码片段:$regdata = "/((?[^){0,1}⊙(?.{12})\S*\s/";//获取页面$html = file_get_contents(&# 阅读全文

从登录框看前端

2014-01-13 15:30 by Barret李靖, 34546 阅读, 收藏, 编辑
摘要:我们会骂 12306 的网站界面挫,效果差,速度慢,回头看看自己写的代码,是不是也一样的狗血!在前端,很多看似简单的东西,内藏无数玄机。本文将以一个小小的登录框为入口,谈一谈如何完善自己的程序。在很多人眼里,前端就是 DIV+CSS+JQuery,甚至还有些人停留在 table 布局的迷雾当中(这些... 阅读全文

JavaScript异步编程原理

2014-01-05 11:01 by Barret李靖, 21755 阅读, 收藏, 编辑
摘要:众所周知,JavaScript 的执行环境是单线程的,所谓的单线程就是一次只能完成一个任务,其任务的调度方式就是排队,这就和火车站洗手间门口的等待一样,前面的那个人没有搞定,你就只能站在后面排队等着。在事件队列中加一个延时,这样的问题便可以得到缓解。A: 嘿,哥们儿,快点!B: 我要三分钟,你先等着,完了叫你~A: 好的,记得叫我啊~ 你(C)也等着吧,完了叫你~C: 嗯!...告诉后面排队的人一个准确的时间,这样后面的人就可以利用这段时间去干点别的事情,而不是所有的人都排在队列后抱怨。我写了一段程序来解决这个问题:/*** @author Barret Lee* @email barret. 阅读全文

浅谈模块化加载的实现原理

2013-12-29 20:18 by Barret李靖, 9741 阅读, 收藏, 编辑
摘要:相信很多人都用过 seajs、 requirejs 等这些模块加载器,他们都是十分便捷的工程管理工具,简化了代码的结构,更重要的是消除了各种文件依赖和命名冲突问题,并利用 AMD / CMD 规范统一了格式。如果你不太明白模块化的作用,建议看看玉伯写的一篇文章。为什么他们会想到使用模块化加载呢,我觉... 阅读全文

细说WebSocket - Node篇

2013-12-20 13:42 by Barret李靖, 36504 阅读, 收藏, 编辑
摘要:在上一篇提高到了 web 通信的各种方式,包括 轮询、长连接 以及各种 HTML5 中提到的手段。本文将详细描述 WebSocket协议 在 web通讯 中的实现。 一、WebSocket 协议 1. 概述 websocket协议允许不受信用的客户端代码在可控的网络环境中控制远程主机。该协议包含一个 阅读全文

ECMAScript 6中的let和const关键词

2013-11-28 21:46 by Barret李靖, 4372 阅读, 收藏, 编辑
摘要:ECMAScript 6中多了两个定义变量的关键词,一个是let,另一个是const,后者顾名思义就是常量定义,前者的作用域范围是块级的。一般写过js的童鞋都知道,同其他语言一样,JS中的变量作用域是函数域而不是块级分割的,但是涉及到变量提升(hosting),闭包等问题的时候,很多有经验的程序员依然会头疼。var a = 5;if(true){ var a = 10;}console.log(a);//10上面的结果是10,但是我们看到,在if block内外都有一个a的定义,按我们正常的理解来看,这两个a应该占用的是不同的内存,而事实上,他们共用同一个内存。为此,ES 6中的let关... 阅读全文

OAuth认证原理及HTTP下的密码安全传输

2013-11-26 14:58 by Barret李靖, 6917 阅读, 收藏, 编辑
摘要:很多人都会问这样一个问题,我们在登录的时候,密码会不会泄露?随便进一个网站,登录时抓包分析,可以看到自己的密码都是明文传输的,在如此复杂的web环境下,我们没有百分的把握保证信息在传输过程中不被截获,那不使用明文如何告诉服务器自己的身份呢?在一些高度通信安全的网络中,数据传输会使用HTTPS作为传输协议,但是通常情况下我们没必要使用HTTPS传输,虽说安全,但传输数据都需要加密解密,很费时。我们可以使用一些加密方式(如md5)对密码进行加密,如果仅仅只对密码加密那肯定是没有任何作用,所以可以在密码中加入一些其他的字符,合并之后使这个密码成为一个临时密码~username:password:在上 阅读全文

chrome浏览器渲染白屏问题剖析

2013-11-04 13:26 by Barret李靖, 4208 阅读, 收藏, 编辑
摘要:刚截图十几次,终于捕捉到了这个白屏现象,hiahia~~大家可以很清晰地看到下边还木有渲染完毕的透明层,这是一个十分普遍的问题,经常遇到。我的浏览器版本是到目前为止应该是最新版(release版本),之前的版本应该也存在类似的问题。只要处理好代码,这种体验相当不好的白屏问题是可以避免的,Qzone的页面貌似就没有这个现象。首先我们来聊一聊这个问题是怎么产生的,这涉及到chrome浏览器对网页的解析和渲染。渲染引擎首先通过网络获得所请求文档的内容,通常以8K分块的方式完成。下面是渲染引擎在取得内容之后的基本流程:解析html以构建dom树->构建render树->布局render树- 阅读全文

SEO:让搜索引擎对你的网站更有亲和力(译)

2013-11-01 15:40 by Barret李靖, 2178 阅读, 收藏, 编辑
摘要:人可以通过查看网站信息了解网站的内容,但是搜索引擎只对标签感兴趣,对内容的识别能力是很低的,如何让蜘蛛通过标签认识你的文章内容呢~原文网址:http://schema.org/docs/gs.html本文地址:http://www.cnblogs.com/hustskyking/p/let-your-page-understood-by-search-engine.html译者:Barret Lee日期:2013-11-01许多站长应该对HTML标签十分熟悉,HTML标签告诉浏览器如何去呈现标签的内容,比如阿凡达,告诉浏览器用大标题的形式显示“阿凡达”。但是,HTML标签本身并没有给出任何信息 阅读全文

前端学习的那些往事

2013-10-31 17:00 by Barret李靖, 2784 阅读, 收藏, 编辑
摘要:上次如何培育新人一文中也提到了自己学习前端的一些事儿,这两天几个新人问我当初是如何逐步学习前端的,因为以前也没做过什么记录,时间虽不长,记忆却开始模糊了,趁着还有些感觉,把这些往事都写下来。 之前看聂微东大哥的文章,有一篇说到了他学习前端的经历(说说我的web前端之路,分享些前端的好书),主要... 阅读全文

阿里面试的一点感受

2013-09-26 21:30 by Barret李靖, 13247 阅读, 收藏, 编辑
摘要:刚坐下不久,面试官到了,他告诉我他花名是”李牧“,表示不认识啊,囧。问我有没有写阿里的笔试题,当时就帮同事做了下,模糊记得自己也做了一份,然后他来了个干瞪眼,说:“你自己做没做都不知道,那来这儿干嘛!“,语塞了几秒钟,回答说:”我有收到不用笔试直接过来面试的短信= =||“。 先给了我四道题目,他趁我做题之际把我的博客和github都瞄了一通。面试题目都比较有深度,我觉得要构思几道不错的题目还挺难的,虽说记得原题,我就不贴出来了,就大概说说他都考核了哪些知识吧~ 1. 值类型 引用类型的理解,如var a = {"x": 1};var b = a;a.x = 2;b.x; 阅读全文

浅谈叶小钗面试的几个问题

2013-06-27 19:37 by Barret李靖, 3053 阅读, 收藏, 编辑
摘要:问题:链接地址:http://www.cnblogs.com/yexiaochai/p/3158443.html① 作用域问题var a = 6;setTimeout(function () { alert(a); a = 666;}, 1000);a = 66;这道题,我可耻的没有答起,我面试结束刚刚上出租就知道这道题很水了。。。。考察作用域的,当时活生生的被大神气场照住了,周围人的集体智商都减低了!!!② 语义化标签这道题我确实没辙,之前其实差点写类似的博客,却没有写,今天结束后补上吧!1)tite与h1的区别2)b与strong的区别3)i与em的区别PS:不要小看这些题,8... 阅读全文

正则表达式30分钟入门教程

2013-06-04 10:41 by Barret李靖, 8932 阅读, 收藏, 编辑
摘要:正则表达式30分钟入门教程目录本文目标如何使用本教程正则表达式到底是什么东西?入门测试正则表达式元字符字符转义重复字符类分枝条件反义分组后向引用零宽断言负向零宽断言注释贪婪与懒惰处理选项平衡组/递归匹配还有些什么东西没提到本文目标30分钟内让你明白正则表达式是什么,并对它有一些基本的了解,让你可以在自己的程序或网页里使用它。如何使用本教程最重要的是——请给我30分钟,如果你没有使用正则表达式的经验,请不要试图在30秒内入门——除非你是超人 :)别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有你想像中的那么困难。当然,如果你看完了这篇教程之后,发现自己明白了很多, 阅读全文