关于角的前端面试题有哪些

  介绍

这篇文章主要介绍了关于角的前端面试题有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

<强> 1,ng-if跟ng-show/隐藏的区别有哪些?

第一点区别是,<代码> ng-if> 的时候才创建这个dom <代码> 节点,<代码> ng-show> 显示:块和<代码>显示:没有>

第二点区别是,<代码> ng-if> ng-switch ,<代码> ng-include>

这样会导致,在<代码> ng-if> ng-model> p> 绑定给另一个显示区域,内层改变时,外层不会同步改变,因为此时已经是两个变量了。

& lt; p>{{名称}}& lt;/p>   & lt; div  ng-if=皌rue"祝辞   & lt; input 类型=皌ext", ng-model=皀ame"比;   & lt;/div>

<代码> ng-show>

避免这类问题出现的办法是,始终将页面中的元素绑定到对象的属性(数据。x)而不是直接绑定到基本变量(x)上。

<强> 2,ng-repeat迭代数组的时候,如果数组中有相同值,会有什么问题,如何解决?

会提示<代码>复制在一个中继器不允许> track by $index 可解决。当然,也可以 trace by 任何一个普通的值,只要能唯一性标识数组中的每一项即可(建立 dom 和数据之间的关联)。

3,ng-click 中写的表达式,能使用 JS 原生对象上的方法吗?

不止是 ng-click 中的表达式,只要是在页面中,都不能直接调用原生的 JS 方法,因为这些并不存在于与页面对应的 Controller$scope 中。

4、factory、service 和 provider 是什么关系?

factory:把 service 的方法和数据放在一个对象里,并返回这个对象

service:通过构造函数方式创建 service,返回一个实例化对象

provider:创建一个可通过 config 配置的 service$get 中返回的,就是用 factory 创建 service 的内容

从底层实现上来看,service 调用了 factory,返回其实例;factory 调用了 provider,返回其 $get 中定义的内容。factoryservice 功能类似,只不过 factory 是普通 function,可以返回任何东西(return 的都可以被访问,所以那些私有变量怎么写,你懂的);

service 是构造器,可以不返回(绑定到 this 的都可以被访问);

provider 是加强版 factory,返回一个可配置的 factory

5、angular 中控制器之间如何通信?

1、Service

2、events,指定绑定的事件

3、使用 $rootScope

4、controller之间直接使用$parent, $$childHead

5、directive 指定属性进行数据绑定

6,angular 的数据绑定采用什么机制?详述原理

使用的脏检查机制,所谓的双向绑定,其实就是从界面的操作能实时反映到数据,数据的变更能实时展现到界面。AngularJS$scope变量中使用脏值检查来实现了数据双向绑定,并且可以通过$scope.美元看>

<代码>角> 角> 队看美元列里插入一条<代码>美元看> 阶段(<代码>角> 代码编译阶段和<代码>与阶段——译者注),<代码>角> 指令> 美元看

当浏览器接受到可以被<代码>角上下文> 消化循环,这个循环是由两个更小的循环组合起来的,一个是<代码>美元看> 美元evalAsync>

关于角的前端面试题有哪些