📜  Backbone.js面试问题

📅  最后修改于: 2020-12-24 10:21:34             🧑  作者: Mango

Backbone.js面试问题

下面列出了最常见的Backbone.js面试问题和答案。

1)解释Backbone.js?

Backbone.js是基于JavaScript的轻量级框架。它用于开发在Web浏览器上运行的客户端应用程序。在Backbone.js中开发客户端应用程序非常容易,并且消耗的时间更少。它支持Model-View-Controller体系结构。

2)Backbone.js用哪种语言编写?

骨架.js是用JavaScript编写的。它是一个JavaScript库,其中包含RESTful JSON接口。

3)Backbone.js的发布时间和发布者是谁?

Backbone.js最初于2010年10月13日由Jeremy Ashkenas发布。

4)哪个是Backbone.js的最新稳定版本,发布日期是什么?

Backbone.js的最新稳定版本是1.3.3,它于2016年4月5日发布。

5)Backbone.js的主要组件是什么?

Backbone.js的主要组件:

  • 模型-它对数据执行各种类型的操作,例如验证,转换,计算的属性,访问控制。
  • 视图-它指定数据的外观。
  • 集合-处理新模型的加载和保存到服务器。
  • 路由器-用于路由客户端应用程序并将它们连接到操作和事件。
  • 事件类对象-通过使用我们选择的所需名称,它便于对象绑定和触发自定义事件。

6)解释Backbone.js的体系结构

Backbone.js支持Model-View-Controller体系结构,该体系结构允许开发人员将业务逻辑和GUI逻辑分开。

  • 模型:它由数据和从服务器检索数据的逻辑组成。
  • 视图:它由负责最终用户界面的代码组成,即,将应用程序呈现给用户的方式。
  • 控制器:它是控制应用程序行为的主要应用程序逻辑。它是代码的一部分,充当了模型和视图之间的桥梁。

7)什么时候需要Backbone.js?

在以下情况下需要Backbone.js:

  • 在开发需要大量JavaScript的Web应用程序时。
  • 如果您的应用程序需要可伸缩性,那么当您希望为代码提供结构时,这是必需的。
  • 当Web应用程序必须使用jQuery遍历DOM或提供动画时,Backbone很有用。
  • 当模型更改并且您想要自动更新HTML应用程序时。

8)Backbone.js中的Collection是什么?

集合可以定义为模块的有序集合。在Backbone.js中,有一个收集类,提供了一些有用的方法来处理这些收集。我们可以扩展集合类以提供一些附加功能。例如:

  
      

9)设置Backbone.js需要三个js文件?

以下是设置Backbone.js所需的三个js文件:

  • jQuery的
  • 骨干
  • 下划线

10)Backbone.js路由器有什么用?

Backbone.js路由器用于将应用程序的URL路由到某些特定的操作和事件。每个定义的路由器必须至少存在一条路由。当Web应用程序提供可链接的,可书签的和可共享的URL时,它还定义了应用程序对象的URL表示。

   
      

11)描述骨干事件?

Backbone.js事件可以定义为可以与任何对象混合的模块。以下是用于处理Backbone.js事件的方法,

  • on-将事件绑定到对象,并在触发事件时执行回调。
  • off-从对象中删除回调函数或所有事件。
  • 触发器-调用给定事件的回调函数。
  • 一次-它在创建自己的骨干模型时扩展了骨干模型类。
  • listenTo-通知一个对象侦听另一个对象的事件。
  • stopListening-可用于停止侦听其他对象上的事件。
  • listenToOnce-导致侦听器仅在删除回调函数之前发生一次。

12)Backbone.js中的视图是什么?

视图是Backbone.js体系结构的重要组成部分。在Backbone.js应用程序中,视图负责最终用户界面。该视图定义了应用程序查看用户的方式。视图还负责侦听事件并做出相应的反应。

  
         

13)Backbone.js中的Modelbinder是什么?

Model Binder是一个类,用于将模型和视图绑定在一起。完成绑定以存档同步。

14)是否提到了Model Binder最强大的功能?

模型绑定程序的一些最强大的功能是

  • 使用J-Query创建绑定时,它允许开发人员定义范围。
  • 在某些情况下,我们可以依赖基于HTML的name属性的默认作用域规则。
  • 如果视图很复杂,可以重新定义作用域规则。

15)Backbone.js有什么优势?

Backbone.js的优点:

  • 您可以使用JavaScript,并使用最少的数据结构(模型和集合)和用户界面(视图和URL)来使用Backbone.js开发Web应用程序。
  • 最好以组织化和结构化的方式开发诸如Web应用程序,单页Web应用程序或复杂的JavaScript Web应用程序之类的MVC,而无需将JavaScript代码与HTML混合。
  • 它提供具有许多功能的API。
  • 它提供键值绑定和自定义事件。
  • 它有助于您将数据抽象到模型中,将DOM应用程序抽象到视图中,并使用事件将两者绑定在一起。

16)Backbone.js中的转换器是什么?

Converter是用于将JavaScript对象转换为模型的函数。当在HTML元素和模型的属性之间进行转换时,将调用它。

17)Backbone.js中的同步是什么?

同步是每次都会调用的函数。它尝试读取模型或将模型保存到服务器。它将模型的状态持久保存到服务器。

18)Backbone.js中的实用程序有哪些方法?

可以使用两种方法来操作Backbone.js实用程序:

  • Backbone.noConflict:它将Backbone对象返回其原始值,并提供了一种存储对主干的引用的工具。它可用于将主干网嵌入到您不想破坏现有主干网的第三方网站上。
  • Backbone。$:当页面上有多个jQuery副本或想要告诉Backbone使用特定对象作为其DOM / Ajax库时,将使用此属性。

19)提到可以在Backbone.js中使用解除绑定函数的情况?

解除绑定函数用于删除模型上的绑定。

20)Backbone.js中有哪些可用的配置选项?

Backbone.js中提供以下配置选项。

  • modelSetOptions
  • boundAttributes
  • 投掷
  • 转换器
  • 改变触发器
  • InitialCopyDirection

21)Backbone.js中的解析功能是什么?

从服务器响应获取或存储操作而返回的数据称为解析。它通过传递到响应对象中来返回模型的数据。

   
     

22)setElement的函数是什么?

Backbone.js setElement方法用于将主干视图应用于其他DOM元素。例如: