深入理解JavaScript (5) —— 闭包

2017-05-10
阅读 2 分钟
1.4k
如上代码,bar函数作为返回值,赋值给f1变量。执行f1(15)时,用到了fn作用域下的max变量的值。至于如何跨作用域取值,可以参考上一节。

深入理解JavaScript (4) —— 从自由变量到作用域链

2017-05-10
阅读 1 分钟
4.6k
上述代码的执行结果说明“要到父作用域中取”这句话并不准确,更贴切的说法是:要到创建这个被执行函数(此处为fn)的那个作用域(此处为全局作用域,因为fn是在全局作用域中创建的)中取值 是“创建”,而不是“调用”,切记切记——其实这就是所谓的“静态作用域”。换言之,此处最终执行的函数是fn,而自由变量是a,因此要到创...

深入理解JavaScript (3) —— 作用域

2017-05-10
阅读 1 分钟
2.1k
针对有经验的开发者,纠正一个过时的理解:你可能听过这句话“javascript没有块级作用域”。所谓“块”,就是大括号“{}”中间的语句。诚然,在ES6之前,这句话是完全正确的,但ES中新增的两个命令let和const,改变了这种状态,使得js也有了块级作用域的概念。详见:[链接]

彻底理解从输入URL与页面展现

2017-05-09
阅读 4 分钟
5.7k
URL与URI:URI 属于 URL 更低层次的抽象,是一种字符串文本标准。就是说,URI 属于父类,而 URL 属于 URI 的子类。URL 是 URI 的一个子集。二者的区别在于,URI 表示请求服务器的路径,定义这么一个资源。而 URL 同时说明要如何访问这个资源(http://)。

深入理解JavaScript (2) —— this

2017-05-09
阅读 3 分钟
1.7k
函数中this的取值,是在函数调用的预处理时确定的,而不是函数定义时确定的。因为this的取值是执行上下文环境的一部分,而每次调用函数才会对函数中的代码段做一次预处理,进而产生一个新的执行上下文环境。

深入理解JavaScript (1) —— 执行上下文与执行上下文栈

2017-05-09
阅读 2 分钟
3.5k
JavaScript在执行一个“代码段”之前,即解析(预处理)阶段,会先进行一些“准备工作”,例如扫描JS中var定义的变量、函数名等,进而生成执行上下文。

Ajax语法浅析

2017-05-01
阅读 8 分钟
4.7k
本周,荷甲劲旅阿贾克斯在欧联杯四分之一决赛次回合中虽2-3落败,但凭借首回合两球优势,以总比分4-3将德甲强敌沙尔克04淘汰出局,拿到一个四强席位... ...

jQuery设计思想之应用篇

2017-04-30
阅读 6 分钟
1.7k
我主要参考了Addy Osmani的PPT《提高jQuery性能的诀窍》(jQuery Proven Performance Tips And Tricks)。他是jQuery开发团队的成员,具有一定的权威性,提出的结论都有测试数据支持,非常有价值。

jQuery设计思想之理解篇

2017-04-30
阅读 7 分钟
2.5k
转自:阮一峰 2011年7月26日 [链接] jQuery是目前使用最广泛的JavaScript函数库。 据统计,全世界排名前100万的网站,有46%使用jQuery,远远超过其他库。微软公司甚至把jQuery作为他们的官方库。 对于网页开发者来说,学会jQuery是必要的。因为它让你了解业界最通用的技术,为将来学习更高级的库打下基础,并且确实可以...

渐进增强与优雅降级

2017-03-28
阅读 1 分钟
1.6k
渐进增强(progressive enhancement):从被所有浏览器支持的基本功能开始,逐步地添加那些只有新式浏览器才支持的功能,当浏览器支持时,它们会自动地呈现出来并发挥作用。 优雅降级(graceful degradation):一开始就构建完整的功能,然后再针对低版本浏览器进行兼容。