AngularJS:这是一个前端动态JavaScript框架,用于开发“单页应用程序”。 AngularJS由Google管理,并且是开源的。这意味着它可以向全球的开发人员开放。因此,有许多在线免费材料可供学习技术。发布之后,AngularJS迅速流行起来。这是因为它提供给开发人员的大量功能,例如数据绑定,更容易的事件处理等。
Angular 2:它基于“ Typescript”。 Typescript是一种由Microsoft管理的开源编程语言。 Angular 2与AngularJS完全不同。 AngularJS具有控制器,$ scope,$ scope变量等功能。但是,在Angular 2中,这些功能被新的功能(即组件和指令)所取代。
AngularJS功能:
- MVC框架: AngularJS的“模型视图控件”架构本质上是动态的。 “模型”涵盖了应用程序的数据和逻辑部分,“视图”涵盖了应用程序的美感,而“控制器”则将两者联系在一起,并使应用程序可以作为一个整体函数。因此,所有组件都分别构建,然后再组合。
- 用户界面: AngularJS使用基本的HTML标签创建用户界面。
- 更少的代码,做更多的事情:使用AngularJS的最大优点是,使用AngularJS创建相同功能所需的代码行比使用jQuery之类的其他库要少。数据绑定是其背后的主要因素。
- 过滤器:它有助于创建分页系统,并有助于根据给定参数过滤数据数组。例如,假设有一个数据数组,其中包含所有小于5的自然数,即[1、2、3、4、5]。
现在假设应用了一个过滤器,该过滤器仅允许将小于4的数字添加到结果数组中。因此,结果数组将为[1、2、3]。这可以通过使用AngularJS过滤器来实现。 - 表达式: AngularJS表达式写在两个花括号内。 {{表达}}。这些在两种方式的数据绑定中很有用。
- 双向数据绑定:这有助于在模型和视图之间创建同步。在模型中所做的更改会立即反映在视图中,而在视图中的更改会立即反映在模型中。这在创建SPA时很有用。
Angular 2功能:
- 移动开发: Angular 2有助于开发响应式移动应用程序。
- 性能:应用程序的加载时间减少了。动态加载功能有助于减少加载时间。
- 路由:位置服务和导航模型等功能改进了Angular 2中的路由服务。
- 跨平台: Angular 2应用程序可以在所有设备和平台(如Android,iOS,Windows等)上运行。
- 浏览器支持: Angular 2支持几乎所有现代浏览器,例如Google Chrome,Safari,Edge等。
AngularJS vs Angular 2: AngularJS和Angular 2的比较
Factor | Angular JS | Angular 2 |
---|---|---|
Language | Written in JavaScript. | Written in TypeScript(a superset of Javascript). |
Routing | $routeprovider.when() is used for routing configuration. | @RouteConfig{} is used for routing. |
Architecture | Uses MVC architecture to build the applications. | Uses MVVM architecture to build the applications. |
Mobile Support | AngularJS does not support mobiles. | Angular 2 was developed specifically to cater to the mobile users. |
Complications | It is easier to learn. However, the application starts to lag once the number of users at a time gets higher than 200. | It is inefficient for creating small applications, as setting up the Angular 2 development environment is difficult. |
Syntax | Syntax is complicated to learn. | Syntax is comparatively easier than AngularJS. |
Plugin | Additional plugins are not required for developement. | Angular 2 require additional plugins for development. |