摘要: <script type="text/javascript">var x=100;alert(window.x);alert(x);</script>等同于下面代码<script type="text/javascript">window.x=100;alert(window.x);alert(x);</script> 阅读全文
posted @ 2013-04-27 16:37 画零落香 阅读(544) 评论(0) 推荐(0) 编辑
摘要: 这个系列的第一部分和第二部分,介绍了Javascript模块原型和理论概念,今天介绍如何将它们用于实战。我采用的是一个非常流行的库require.js。一、为什么要用require.js?最早的时候,所有Javascript代码都写在一个文件里面,只要加载这一个文件就够了。后来,代码越来越多,一个文件不够了,必须分成多个文件,依次加载。下面的网页代码,相信很多人都见过。 <script src="1.js"></script> <script src="2.js"></script> <script 阅读全文
posted @ 2013-04-27 16:08 画零落香 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 这个系列的第一部分介绍了Javascript模块的基本写法,今天介绍如何规范地使用模块。(接上文)七、模块的规范先想一想,为什么模块很重要?因为有了模块,我们就可以更方便地使用别人的代码,想要什么功能,就加载什么模块。但是,这样做有一个前提,那就是大家必须以同样的方式编写模块,否则你有你的写法,我有我的写法,岂不是乱了套!考虑到Javascript模块现在还没有官方规范,这一点就更重要了。目前,通行的Javascript模块规范共有两种:CommonJS和AMD。我主要介绍AMD,但是要先从CommonJS讲起。八、CommonJS2009年,美国程序员Ryan Dahl创造了node.js项 阅读全文
posted @ 2013-04-27 16:07 画零落香 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 随着网站逐渐变成"互联网应用程序",嵌入网页的Javascript代码越来越庞大,越来越复杂。网页越来越像桌面程序,需要一个团队分工协作、进度管理、单元测试等等......开发者不得不使用软件工程的方法,管理网页的业务逻辑。Javascript模块化编程,已经成为一个迫切的需求。理想情况下,开发者只需要实现核心的业务逻辑,其他都可以加载别人已经写好的模块。但是,Javascript不是一种模块化编程语言,它不支持"类"(class),更遑论"模块"(module)了。(正在制定中的ECMAScript标准第六版,将正式支持" 阅读全文
posted @ 2013-04-27 16:06 画零落香 阅读(124) 评论(0) 推荐(0) 编辑