摘要: 问题 假设我开了一个创业公司,现在邀请一批老伙伴加入公司,一起吃饼。这时候我收到了这些回复: 1. ok, i will do it 2. okie dokie 3. Ahooy, Okay!!! 4. why sure, i can go 5. arrr, yes matey 6. My answ 阅读全文
posted @ 2016-03-02 10:44 Xiaohu1986 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 匹配邮箱 在《正则表达式1-字符串匹配种》,我们知道如何去匹配名称了,现在来看看一个更复杂的例子,邮箱吧。 我们看一下这个邮箱的组成 405062429@qq.com 405062429是邮箱名称,qq.com是域名。 点 我们如何匹配呢?看看这个行不行 好像可以,但是‘405062429@qq+c 阅读全文
posted @ 2016-03-02 10:43 Xiaohu1986 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 为什么需要正则表达式,他虎在哪 想象一下在网页上我们需要用户输入邮政编码,比如我的家乡安徽省马鞍山当涂县 243100 邮政编码是由6个数字组成的。我们如何判断用户输入的是合法的邮政编码呢?如果没有正则表达式,可能会这样写: 通过这个例子,我们说说正则表达式的好处: 1. 这个函数如果用正则表达式就 阅读全文
posted @ 2016-03-02 10:42 Xiaohu1986 阅读(278) 评论(0) 推荐(0) 编辑
摘要: JS模块化和闭包 js最初作为一个在浏览器中运行的脚本语言,设计的目标是用来给html增加交互行为,早期的网站都是在服务器端生成并返回给浏览器,js也只对单独的一个html进行操作,所以模块化并没有在早期的JS中得到很好的考虑,随着浏览器js引擎越发的快速,现在已经有很多前端框架,并不依赖与服务器生 阅读全文
posted @ 2016-02-22 16:30 Xiaohu1986 阅读(2916) 评论(0) 推荐(0) 编辑
摘要: JS红色警戒 JS有很多让人迷惑的地方,一起来看看吧。 with with可以扩展作用域链,建议永远不要使用它。我们来看看这些列子。 案例1 正常用法 看起来很方便的样子。 with让阅读代码的人很疯狂 看看下面的代码 我们运行一下就知道,两个变量变成了全局变量。 案例2 正常用法 with让阅读代 阅读全文
posted @ 2016-02-22 14:35 Xiaohu1986 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 异常处理 JS语言和大部分语言一样,有异常处理。但是JS中的异常处理和编译性的语言有一些差别。要弄清楚这个差别,我们要分清楚JS中的语法错误和运行时错误。 语法错误 语法错误不会通过解析器,他会被标记为非法的JS并报告在控制台中。 看一下这个代码,却少右括号,所以是一个语法错误。控制台会打印出 Un 阅读全文
posted @ 2016-02-22 12:42 Xiaohu1986 阅读(799) 评论(0) 推荐(0) 编辑
摘要: JS中的比较 ==与=== ==会进行类型转换,所以结果为true 会判断内容和类型是否匹配,所以结果为 。建议都使用 ,因为 的转换并不好记忆, 可以帮助我们确保结果是我们所期望的。 instanceof 有的时候我们需要判断\n 1. 一个object是否由某个构造函数创建的(是否是某类型) 2 阅读全文
posted @ 2016-02-21 21:52 Xiaohu1986 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 优化JS代码性能 优化循环 我们来看一段段代码 这段代码循环footballTeam中的members数组,然后打印队员。怎么优化呢?首先footballTeam.members.length可以缓存一下,footballTeam.members[i]也可以缓存一下,看一下下面的代码就知道了。为什么 阅读全文
posted @ 2016-02-20 22:50 Xiaohu1986 阅读(474) 评论(0) 推荐(0) 编辑
摘要: switch语句的技巧 概述 switch语句对一个表达式求值,将结果与 case 子语句比较,如果匹配,则从 case 处的语句向下执行。 语法 语句是可选择的,如果遇到 则会跳出整个 语句。如果没有任何case匹配,则进入到 的分支。 分支也是可选的。 switch语句的技巧 case中使用条件 阅读全文
posted @ 2016-02-20 21:12 Xiaohu1986 阅读(649) 评论(0) 推荐(0) 编辑
摘要: 逻辑运算符的使用技巧 逻辑或 Logical OR (||)语法 expr1 || expr2 返回expr1如果expr1为true;否则返回expr2。||会选择第一个(leftmost)为真的值作为结果,当找到一个真值的时候,后面的值不再计算,这叫做short circuiting 。如果没有 阅读全文
posted @ 2016-02-20 20:09 Xiaohu1986 阅读(751) 评论(0) 推荐(0) 编辑