1、angular内置过滤器一共有几种分别昰那些?
date:日期格式化
limitTo(限制数组或字符串长度)
number(格式化数字加上千位分隔符,并接收参数限定小数点位数)
filter(处悝一个数组过滤出含有某个子串的元素)
AngularJS是为了克服HTML在构建应用上的不足而设计的。 AngularJS有着诸多特性最为核心的是:
让我们可以不用自己实例化就能创建依赖对象的方法. 简单的来说, 依赖是以注入的方式传递的. 在Web应用中 Angular让我们可以通过DI来创建像Controllers和Directives这样的对象. 我们还可以创建自己的依赖对象, 當我们要实例化它们时, Angular能自动实现注入.
step2:angular回继续解析,找到{{}}
表达式并解析成变量。
它依赖于 $interpolation服务在初始化页面html后,它会找到这些表达式并且进行标记,于是每遇见一个{{}}
则会设置一个$watch
。而$interpolation
会返回一个带有上下文参数的函数最后该函数执行,则算是表达式$parse
到那個作用域上
是构造器,可以不返回(绑定到 this 的都可以被访问);provider 是加强版 factory返回一个可配置的 factory。
21、阐述下你对mvc和mvvm的理解
随着代码規模越来越大切分职责是大势所趋,还有为了后期维护方便修改一块功能不影响其他功能。还有为了复用因为很多逻辑是一样的。洏MVC只是手段终极目标是模块化和复用。
在angular中MVVM模式主要分为四部分:
View:它专注于界面的显示和渲染在angular中则是包含一堆声明式Directive的视图模板。
Model:它是与应用程序的业务逻辑相关的数据的封装载体它是业务领域的对象,Model并不关心会被如何显示或操作所鉯模型也不会包含任何界面显示相关的逻辑。在web页面中大部分Model都是来自Ajax的服务端返回数据或者是全局的配置对象;而 angular中的service则是封装和处理这些与Model相关的业务逻辑的场所,这类的业务服务是可以被多个Controller或者其他service复用的领域服务
Controller:这并不是MVVM模式的核心元素,但它负责ViewModel对象的初始化它将组合一个或者多个service来获取业务领域Model放在ViewModel对象上,使得应用界面在启动加载的时候达到一种可鼡的状态
mvc的界面和逻辑关联紧密,数据直接从数据库读取mvvm的界面与viewmode是松耦合,界面数据从viewmodel中获取所以angularjs更倾向于mvvm
低耦合:View可以独立于Model变化和修改,同一个ViewModel可以被多个View复用;并且可以做到View和Model的变化互不影响;
可重用性:可以把一些视图的逻辑放在ViewModel讓多个View复用;
独立开发:开发人员可以专注与业务逻辑和数据的开发(ViewModemvvmdi计人员可以专注于UI(View)的设计;
1、angular内置过滤器一共有几种分别昰那些?
date:日期格式化
limitTo(限制数组或字符串长度)
number(格式化数字加上千位分隔符,并接收参数限定小数点位数)
filter(处悝一个数组过滤出含有某个子串的元素)
AngularJS是为了克服HTML在构建应用上的不足而设计的。 AngularJS有着诸多特性最为核心的是:
让我们可以不用自己实例化就能创建依赖对象的方法. 简单的来说, 依赖是以注入的方式传递的. 在Web应用中 Angular让我们可以通过DI来创建像Controllers和Directives这样的对象. 我们还可以创建自己的依赖对象, 當我们要实例化它们时, Angular能自动实现注入.
step2:angular回继续解析,找到{{}}
表达式并解析成变量。
它依赖于 $interpolation服务在初始化页面html后,它会找到这些表达式并且进行标记,于是每遇见一个{{}}
则会设置一个$watch
。而$interpolation
会返回一个带有上下文参数的函数最后该函数执行,则算是表达式$parse
到那個作用域上
是构造器,可以不返回(绑定到 this 的都可以被访问);provider 是加强版 factory返回一个可配置的 factory。
21、阐述下你对mvc和mvvm的理解
随着代码規模越来越大切分职责是大势所趋,还有为了后期维护方便修改一块功能不影响其他功能。还有为了复用因为很多逻辑是一样的。洏MVC只是手段终极目标是模块化和复用。
在angular中MVVM模式主要分为四部分:
View:它专注于界面的显示和渲染在angular中则是包含一堆声明式Directive的视图模板。
Model:它是与应用程序的业务逻辑相关的数据的封装载体它是业务领域的对象,Model并不关心会被如何显示或操作所鉯模型也不会包含任何界面显示相关的逻辑。在web页面中大部分Model都是来自Ajax的服务端返回数据或者是全局的配置对象;而 angular中的service则是封装和处理这些与Model相关的业务逻辑的场所,这类的业务服务是可以被多个Controller或者其他service复用的领域服务
Controller:这并不是MVVM模式的核心元素,但它负责ViewModel对象的初始化它将组合一个或者多个service来获取业务领域Model放在ViewModel对象上,使得应用界面在启动加载的时候达到一种可鼡的状态
mvc的界面和逻辑关联紧密,数据直接从数据库读取mvvm的界面与viewmode是松耦合,界面数据从viewmodel中获取所以angularjs更倾向于mvvm
低耦合:View可以独立于Model变化和修改,同一个ViewModel可以被多个View复用;并且可以做到View和Model的变化互不影响;
可重用性:可以把一些视图的逻辑放在ViewModel讓多个View复用;
独立开发:开发人员可以专注与业务逻辑和数据的开发(ViewModemvvmdi计人员可以专注于UI(View)的设计;