Angular JS (Angular.JS) 是一组用来开发Web页面的框架、模板以及数据绑定和丰富UI组件。它支持整个开发进程,提供web应用的架构,无需进行手工DOM操作。 AngularJS很小,只有60K,兼容主流浏览器,与 jQuery 配合良好。
变量和作用域
变量和作用域
基本类型和引用类型
- 基本类型按值访问,引用类型按引用访问。高程注解中说明当复制保存着对象的某个变量时,操作的是对象的引用;当为对象添加属性时,操作的是实际的对象。
- 基本类型的值在内存中占据固定大小的空间,所以被保存在栈内存中。引用类型的值是对象,保存在堆内存中。
- 引用类型的变量实际包含的是一个指针,指向堆内存中这个对象。
- 给基本类型添加属性时无效,尽管这样做不会导致错误。
1 | var name = 'james' |
- 所有函数的参数都是按值传递。基本类型按值传递很好理解,引用类型稍微有些复杂,但对象也是按值传递的,这点毫无疑问。
Web应用的组件化开发
1.早期的前端怎么做组件化的?
在服务端,我们有很多组件化的途径,像J2EE的Beans就是一种。组件建造完成之后,需要引入一些机制来让它们可配置,比如说,工作流引擎,规 则引擎,这些引擎用配置的方式组织最基础的组件,把它们串联为业务流程。不管使用什么技术、什么语言,服务端的组件化思路基本没有本质差别,大家是有共识 的,具体会有服务、流程、规则、模型等几个层次。
早期展示层基本以静态为主,服务端把界面生成好,浏览器去拿来展示,所以这个时期,有代码控制的东西几乎全在服务端,有分层的,也有不分的。如果做了分层,大致结构就是下图这样:

script 标签中的 defer和 async
script 标签中的 defer和 async
defer
- 可选属性。表示脚本可以延迟到文档被完全解析和显示后执行。只对外部脚本有效。
async
- 可选属性。表示应该立即下载脚本,但不应该妨碍页面中的其他操作,比如下载其他资源或等待加载其他脚本。只对外部脚本有效。
#####例如
<script async src="myAsyncScript.js"></script>
<script defer src="myDeferScript.js"></script>