Here we have mentioned most frequently asked ExtJS Interview Questions and Answers specially for freshers and experienced.


 

1. Why do we need javascript Library?

Ans:

Javascript is an awesome, super flexible language. Browsers are the modern UI paradigm.
The javascript Libraries now must provide a rich set of UI Widgets.
javascript libraries:
* JQuery
* Qooxdoo
* Dojo
* Prototype.js
* Mootools
* ExtJS

2. Why did you choose Ext JS?

Ans:

The overall design of ExtJS is exemplary.One can learn a lot from it’s unified architecture – no matter which language one is programming in.
Extjs requires you to start with one of their base classes – ensuring a consitent model. Consistency is extremely important for the library to be reusable.
a.Extjs documentation seems to be very comprehensive and well maintained.
b.key aspect of the EXTJS Library is the cross-browser support.
c.Build rich Internet applications with Ext JS
d. Ext JS framework is the multitude of rich UI elements provided. These elements include forms, dialog boxes, tabs, trees, and grids.
e.The Ext JS framework includes support for Ajax implementations.
f.Ext JS integration with other Web server frameworks.
g.Ext JS framework development into several popular integrated development environments (IDEs), including Eclipse, Aptana, and Komodo.
h.Ext JS provides excellent performance.The framework is fully object oriented and extensible. Because it’s written in the JavaScript language

3. What are major Web browsers supported by Ext JS framework?

Ans:

* Windows® Internet Explorer® version 6 and later.
* Mozilla Firefox version 1.5 and later (PC and Macintosh).
* Apple Safari version 2 and later.
* Opera version 9 and later (PC and Mac).

4. Integration of Web development server-side frameworks with Ext JS?

Ans:

You can use Ext JS with other common Web development server-side frameworks, including PHP, the Java™ language, Microsoft® .NET, Ruby on Rails, and ColdFusion.

5. Where ExtJS extended from?

Ans:

Ext JS as a project to extend the functionality that the YUI Library.A key aspect of the YUI Library is the cross-browser support.The Extjs framework is fully object oriented and extensible. Because it’s written in the JavaScript language.

6. how to disable menu option for header in columnModel?

Ans:

using menuDisabled: true

7. Do you have any advice for developers using ExtJS for the first time?

Ans:

ExtJS can be used by Web Application developers who are familiar with HTML but may have little or no experience with JavaScript application development. If you are starting to build a new web application, or you are revamping an existing application, then take your time to understand the basics of the library including.

8. How to access DOM element using EXTJS?

Ans:

The Element API is fundamental to the entire Ext library.
Using traditional Javascript, selecting a DOM node by ID is done like this:

var myDiv = document.getElementById('myDiv');
Using Extjs:
Ext.onReady(function() {
var myDiv = Ext.get('myDiv');
});

9. What is the purpose of Element Object in ExtJS?

Ans:

Element wraps most of the DOM methods and properties that you’ll need, providing a convenient, unified, cross-browser DOM interface (and you can still get direct access to the underlying DOM node when you need it via Element.dom)
The Element.get() method provides internal caching, so multiple calls to retrieve the same object are incredibly fast
The most common actions performed on DOM nodes are built into direct, cross-browser Element methods (add/remove CSS classes, add/remove event handlers, positioning, sizing, animation, drag/drop, etc.)

10. What is syntax for Extjs Button click event?

Ans:

Ext.onReady(function() {
Ext.get('myButton').on('click', function(){
alert("You clicked the button");
});
});


 

11. What is use of Ext.onReady() function ?

Ans:

Ext.onReady is probably the first method that you’ll use on every page. This method is automatically called once the DOM is fully loaded, guaranteeing that any page elements that you may want to reference will be available when the script runs.
syntax:

Ext.onReady(function() {
alert(“Congratulations! You have Ext configured correctly!”);
});

12. For example, to show our message when any paragraph in our test page is clicked, what is the ExtJS code on paragraph click?

Ans:

Ext.onReady(function() {
Ext.select('p').on('click', function() {
alert("You clicked a paragraph");
});
});

or

Ext.onReady(function() {
var paragraphClicked = function() {
alert("You clicked a paragraph");
}
Ext.select('p').on('click', paragraphClicked);
});

13. List out the extjs library files to include in JSP page?

Ans:

ext-base.js
ext-all-debug.js or ext-all.js
ext-all.css
base.css or examples.css

14. List out the css file required to apply Extjs Theme property?

Ans:

xtheme-gray.css
ext-all.css

15. What is purpose of MessageBox?

Ans:

MessageBox is asynchronous.
MessageBox call, which demonstrates the readable message to user.
MessageBox used for multiple purpose like
Ext.Msg.alert()
Ext.Msg.prompt()
Ext.Msg.show({});
Ext.Msg.wait();

16. Write syntax for MessageBox show() method?

Ans:

Ext.MessageBox.show({
title: 'Paragraph Clicked',
msg: 'User clicked on Paragraph',
width:400,
buttons: Ext.MessageBox.OK,
animEl: paragraph
});

17. What is method to Update the message box body text for MessageBox?

Ans:

updateText( [String text] ) : Ext.MessageBox

18. What is a widget?

Ans:

A widget is a tiny piece or component of functionality.

19. What is parent class for all stores in extjs? how many stores exists?

Ans:

Ext.data.Store is parent class for all stores.
A Store object uses its configured implementation of DataProxy to access a data object unless you call loadData directly and pass in your data.
subclasses for Store:
GroupingStore, JsonStore, SimpleStore

20. How to handle event for a extjs component?

Ans:

1) Using listeners config object.
For ex for grid events : listeners: {rowclick: gridRowClickHandler,rowdblclick: gridRowDoubleClickHandler}
2) Using addListener( String eventName, Function handler, [Object scope], [Object options] ) : void
Appends an event handler to this component
3) Using on( String eventName, Function handler, [Object scope], [Object options] ) : void
Appends an event handler to this element (shorthand for addListener)
For ex: store.on( “datachanged”, function( store ){ ….. });




 

21. How to find no of records in a store?

Ans:

Using
store.getCount() : Gets the number of cached records.
store.getTotalCount() : Gets the total number of records in the dataset as returned by the server.

22. How to handle exception while loading datastore?

Ans:

Using loadexception event.
syntax: store.loadexception() : Fires if an exception occurs in the Proxy during loading.
use beforeload : ( Store this, Object options ) : Fires before a request is made for a new data object. If the beforeload handler returns false the load action will be canceled.
syntax:

store.on('loadexception', function(event, options, response, error) {
alert("Handling the error");
event.stopEvent();
});

23. How to handle updates for store changes?

Ans:

Use store.commitChanges()

24. What is the purpose of each() in store?

Ans:

Calls the specified function for each of the Records in the cache
each( Function fn, [records Object] )

25. How to get modified records using store object?

Ans:

store.getModifiedRecords() : Gets all records modified since the last commit.

26. How to get record using index?

Ans:

store.getAt( Number index ) : Get the Record at the specified index.

27. How to get record using id?

Ans:

store.getById( String id ) : Get the Record with the specified id.

28. What is the purpose of load() in store?

Ans:

store.load() : returns boolean
Loads the Record cache from the configured Proxy using the configured Reader.
For remote data sources, loading is asynchronous, and this call will return before the new data has been loaded.
store.load({callback: fnCheckData, scope: this});

29. What is purpose of loadData() in store?

Ans:

store.loadData( Object data, [Boolean append] ) : void
Loads data from a passed data block and fires the load event.
loadData(storeData,false); False to replace the existing records cache.
loadData(storeData,true) : True to append the new Records rather than replace the existing cache.

30. How many types of layout managers exist in extjs?what are they?

Ans:

Layouts fall under this package Ext.layout.*
Types of layouts:
Absolute Layout:
This is a simple layout style that allows you to position items within a container using CSS-style absolute positioning via XY coordinates.
Accordion Layout:
Displays one panel at a time in a stacked layout. No special config properties are required other than the layout.
All panels added to the container will be converted to accordion panels.
AnchorLayout:
This type of layout is most commonly seen within FormPanels (or any container with a FormLayout) where fields are sized relative to the container without hard-coding their dimensions.
BorderLayout:
Border layouts can be nested with just about any level of complexity that you might need.
Every border layout must at least have a center region. All other regions are optional.
CardLayout (TabPanel):
The TabPanel component is an excellent example of a sophisticated card layout. Each tab is just a panel managed by the card layout such that only one is visible at a time
CardLayout (Wizard):
You can use a CardLayout to create your own custom wizard-style screen.
FitLayout:
A very simple layout that simply fills the container with a single panel.
FormLayout:
FormLayout has specific logic to deal with form fields, labels, etc.FormLayout in a standard panel,
ColumnLayout:
This is a useful layout style when you need multiple columns that can have varying content height.Any fixed-width column widths are calculated first, then any percentage-width columns specified using the columnWidth config
TableLayout:
Outputs a standard HTML table as the layout container.you want to allow the contents to flow naturally based on standard browser table layout rules.


 

31. How we can apply pagination in grid panel?

Ans:

using Ext.PagingToolbar plugin, we can implement pagination to a grid panel
syntax:

new Ext.PagingToolbar({
pageSize: 25,
store: store,
displayInfo: true,
displayMsg: 'Displaying topics {0} - {1} of {2}',
emptyMsg: "No topics to display",
})
// trigger the data store load
store.load({params:{start:0, limit:25}});

32. What is xtype?

Ans:

The xtype will be looked up at render time up to determine what type of child Component like TextField, NumberField etc to create. i,e
xtype = Class
———————-
button = Ext.Button
textfield = Ext.form.TextField
radio – Ext.form.Radio
grid = Ext.grid.GridPanel
combo = Ext.form.Combobox
toolbar = Ext.Toolbar

33. What is vtype?

Ans:

The validations provided are basic and intended to be easily customizable and extended.
Few vtypes provided by extjs are as below:
emailText : String, The error text to display when the email validation function returns false
alphanumText : String, The error text to display when the alphanumeric validation function returns false
urlText : String, The error text to display when the url validation function returns false

34. How to get record object from store?

Ans:

var record = grid.getStore().getAt(rowIndex);

35. What is the purpose of Load mask?

Ans:

To apply mask to page level / component level.
restrict user not to access any components in page
var pageProcessBox = new Ext.LoadMask( Ext.getBody(), { msg: ‘Loading Employee details.’ } );
pageProcessBox.show();

36. What is purpose of renderer in grid panel?

Ans:

Using config option,
renderer: fnCellColor where fnCellColor is method to apply color to a cell.

37. How to get selection model used in a grid panel?

Ans:

Using grid.getSelectionModel(); method

38. How to stop editing a record?

Ans:

newRecord.endEdit();

39. How to start editing a record?

Ans:

newRecord.beginEdit();

40. How to commit a record modification?

Ans:

newRecord.commit();



 

41. What is use of combo select event function?

Ans:

To get the selected value from a combo.using getvalue();
var selectedComboValue = mycombo1.getValue();

42. How to get a value of textfield or combo box?

Ans:

using getvalue();
var selectedValue = mytextfield.getValue();

43. How to apply css on select of combo box?

Ans:

Using config option as
emptyClass : ’emptycss’, where emptycss is a css classname

44. What are components required for grid panel?

Ans:

store, columnmodel, id, width,height

45. How to hide the column in grid panel?

Ans:

using hidden : true

46. How to register callbacks to the load and exception events of the JsonStore?

Ans:

var grid = new Ext.grid.GridPanel({
store: new Ext.data.JsonStore({
[...]
listeners: {
load: this.onLoadSuccess.crateDelegate(this),
exception: this.onLoadException.createDelegate(this)
}
}),

onLoadSuccess: function () {
// success
},

onLoadException: function () {
// error
},

[…]
}

47. How to write extjs decode()?

Ans:

var json = Ext.decode(response.responseText);
Ext.Msg.alert('Error', json.error);

48. Why did you choose Ext JS?

Ans:

Given the wide range of JavaScript libraries available it was important to choose the right one. We needed to choose a library that was consistent in the way that it presents information to the user, but also consistent in the way that you code using the library.

With all Ext components extending the ‘Observable’ class we had the ability to write consistent code in an event-driven manner, much like writing a desktop application, not easily achieved with other libraries. What’s more is that we knew it would work cross-browser, again something not easily achieved that saves countless hours on large projects.

49. What features could we add to Ext to make building a rich application like PLANet easier in the future?

Ans:

Once an application gets over a certain size, and customer releases become more frequent, the burden of testing the application starts to take its toll. An Ext supported test suite would save huge amounts of time. The current problem of test suites with Ext is being able to reliably predict the automatic ids that Ext generates for page elements. Test tools are beginning to implement support for CSS selectors to overcome this problem, but few currently exist. Ext could provide better documentation on how to build better test cases with Ext so that more time can be spent on development rather than testing.

50. Difference between ExtJS and JQuery?

Ans:

ExtJs and JQuery are kind of apples and oranges. You can compare Ext Core to JQuery, and ExtJs to JQuery UI.
Ext JS is a full-fledged widget library while jQuery (not jQuery UI) and Mootools are JavaScript frameworks that help with DOM manipulation etc.
Whilst jQuery and Mootools help with the general workings of a site.
jQuery UI is a much less rich set of components.
Ext JS seems to be focussed on tables and storing data, plus manipulating it.




 

51. What is EXT.js?

Ans:

Ext.js is pure Javascript framework that is used for building interactive cross-platform web applications such as desktops, tablets, and smartphones using techniques like Ajax, DHTML and DOM scripting. It provides pre-Integrated and tested UI Components such HTML5 calendar, grids, pivot grid, D3 adapter, trees, lists, forms, menus, toolbars, panels, windows, and much more.

52. List some features of Ext JS?

Ans:

Features of Ext Js : –
Pre-Integrated and Tested UI Components.
Rich Data Analytics.
Code compatibility of new versions with the older one
Sophisticated Data Visualization by supporting D3 js
A flexible layout manager helps to organize the display of data and content across multiple browsers, devices, and screen sizes
It is protocol agnostic and can access data from any back-end source.
Customizable Built-In Themes

53. Which architecture is supported by Ext JS?

Ans:

Ext JS provides support for both MVC (Model view controller) and MVVM (Model View ViewModel) application architectures. Both of these architectural approaches share certain concepts and focus on dividing application code along logical lines

54. What is the latest stable version of Ext JS?

Ans:

As on August 2017 latest stable version of Ext JS 6.2.1.

55. List some advantages of using Ext JS.

Ans:

Streamlines cross-platform development across desktops, tablets, and smartphones — for both modern and legacy browsers.
Increases the productivity of development teams by integrating into enterprise development environments via IDE plugins.
Reduces the cost of web application development.
Empowers teams to create apps with a compelling user experience.
It has set of widgets for making UI powerful and easy.
It follows MVC architecture so highly readable code.

56. Explain limitations of using Ext JS.

Ans:

The size of the library is large around 500 KB which makes initial loading time more and makes application slow.
HTML is full of tags makes it complex and difficult to debug.
According to general public license policy, it is free for open source applications but paid for commercial applications.
Sometimes for loading even simple things requires few lines of coding which is simpler in plain HTML or Jquery.
Need quite experienced developer for developing Ext JS applications.

57. List out major Web browsers supported by Ext JS framework?

Ans:

Below are list of browsers that are supported by Ext Js
Windows Internet Explorer version 6 and later
Mozilla Firefox version 1.5 and later (PC and Macintosh)
Apple Safari version 2 and later
Opera version 9 and later (PC and Mac)
Chrome10 and above

58. What are the different type of alert boxes available in Ext JS?

Ans:

Different type of alert boxes in Ext JS are
Ext.MessageBox.alert();
Ext.MessageBox.confirm();
Ext.MessageBox.wait();
Ext.MessageBox.promt();
Ext.MessageBox.show();

59. What is the difference between ‘ext.js’ and ‘ext-all.js’ file?

Ans:

ext-all.js: This file contains the entire Ext JS framework (used for Development & testing)
ext.js: This file contains the minimum Ext JS code (Ext JS base library)- used in Production.

60. List EXT JS components?

Ans:

Ext JS has various UI components, we have listed some most used components are:

  • Window
  • Form
  • Message Box
  • Progress Bar
  • Grid
  • ToolTip
  • HTML Editor
  • Charts

 

61. What do you know about different versions of Ext JS?

Ans:

Ext JS 1.1
The first version of Ext JS was developed by Jack Slocum in 2006. It was a set of utility classes which is an extension of YUI. He named the library as YUI-ext.
Ext JS 2.0
Ext JS version 2.0 was released in 2007. This version had new API documentation for desktop Application with limited features. This version doesn’t had backward compatibility with previous version of Ext JS.
Ext JS 3.0
Ext JS version 3.0 was released in 2009. This version added new features as chart and list view but at the cost of speed. It had backwards compatible with version 2.0.
Ext JS 4.0
After the release of Ext JS 3 the developers of Ext JS had the major challenge of ramping up the speed. Ext JS version 4.0 was released in 2011. It had the complete revised structure which followed by MVC architecture and a speedy application.
Ext JS 5.0
Ext JS version 5.0 was released in 2014. The major change in this release was to change the MVC architecture to MVVM architecture. It includes the ability to build desktop apps on touch-enabled devices, two-way data binding, responsive layouts and many more features.
Ext JS 6.0
Ext JS 6 merges the Ext JS (for desktop application) and sencha touch (for mobile application) framework.

62. What are the different Ext JS components?

Ans:

Ext JS has various UI components some of the majorly used components are –

  • Grid
  • Form
  • Message Box
  • Progress Bar
  • Tool Tip
  • Window
  • HTML Editor
  • Charts

63. What is xType in Ext JS?

Ans:

xType defines the type of Ext JS UI component, which is determined during rendering of the component. E.g. textField, Numeric, button etc.

64. What is vType in Ext JS?

Ans:

This is the validation type can be customized easily. Few vType provided by Ext JS are –
alphanumText – This returns false if the text entered has any symbol other than alphabate or numeric value.
emailText – This returns false, if text is not a valid email address.

65. Can Ext JS be integrated with Ajax if yes then explain a simplest use of it?

Ans:

Yes Ext JS can be integrated with Ajax. Implementation as: suppose on some text box after blur it has to validate the data from server for that we can have an Ajax call onblur/onchange to the text box id to check whether the data entered in the text box is present in server/database.

66. Can Ext JS be integrated with other server side frameworks?

Ans:

Yes Ext JS can be integrated with other server side framework such as Java, .net, Ruby on rails, PHP, ColdFusion etc.

67. Explain about Ext JS implementation tools.

Ans:

Ext JS can be implemented on any popular integrated development environment (IDE) such as Eclipse, Aptana, Sublime, Webstrom etc.

68. What are the way to access DOM elements in Ext JS?

Ans:

These are few ways to access DOM elements in Ext JS –
Ext.get()
Ext.getElementById()
Ext.fly()
Ext.select()

69. What is Viewmodel in MVVM architecture?

Ans:

MVVM architecture is Model View Viewmodel. In MVVM architecture controller of MVC is replaced by ViewModel.
ViewModel – It is basically medicates the changes between view and model. It binds the data from model to view. At the same time it does not have any direct interaction with view it has only knowledge of model.

70. Write a listener for a button click.

Ans:

Ext.getCmp('buttonId').on('click', function(){
// statement to perform logic
});


 

71. Explain the use of Ext.onReady().

Ans:

Ext.onReady() is the first method which is called when the DOM is fully loaded so that whatever element you want to refer will be available when script runs.

72. Write a listener for any div element clicked on the page.

Ans:

Ext.select('div').on('click', function(){
// statement to perform logic
});

73. What are the different type of alert boxes in Ext JS?

Ans:

Different type of alert boxes in Ext JS are –
Ext.MessageBox.alert();
Ext.MessageBox.confirm();
Ext.MessageBox.wait();
Ext.MessageBox.promt();
Ext.MessageBox.show();

74. What is the base class for store, model & controller?

Ans:

Base classes for Store is Ext.data.Store
For model is Ext.data.Model
For Controller is Ext.app.controller

75. What are the different ways for event handling in Ext JS?

Ans:

These are the different ways for event handling –
Using Listeners
Attaching events later
Using custom events

76. How to get no of records in the store?

Ans:

Store.getCount() – For cached records
Store.getTotalCount() – For total no of records in the DB.

77. How to get modified records in the store?

Ans:

Store.getModifiedRecords()method is used to get modified records.

78. How to update records in the store?

Ans:

Store.commitChanges() method to update store changes.

79. How to get Store record using index?

Ans:

If we have grid Id : Ext.getCmp(‘gridId’).getStore().getAt(index);
If we have store Id: Ext.getStore(‘storeId’).getAt(index);

80. what is function to load store data?

Ans:

Store.load();




 

81. Write the base classes for form, grid, chart, panel & tree.

Ans:

Base class for Grid – Ext.grid.GridPanel
For form – Ext.form.Panel
For panel – Ext.panel.Panel
For chart – Ext.chart.Chart
For tree – Ext.tree.Panel

82. What are the different type of layouts in Ext JS?

Ans:

Different type of layouts are –

  1. Absolute
  2. Accordion
  3. Anchor
  4. Border
  5. Auto
  6. hBox
  7. vBox
  8. Card(TabPanel)
  9. Card(Wizard)
  10. Column
  11. Fit
  12. Table

83. How to apply pagination to the grid?

Ans:

This can be done using pagingToolbar() as –

new Ext.PagingToolbar ({
pageSize: 25,
store: store,
displayInfo: true,
displayMsg: 'Displaying topics {0} - {1} of {2}',
emptyMsg: 'No topics to display',
});
// trigger the data store load
store.load({params:{start:0, limit:25}});

84. How to add docked item?

Ans:

dockedItems: [{
xtype: 'toolbar',
items: [{
id:'buttonId',
handler: function() {
Ext.Msg.alert('title','alertMsg');
});
}]
}]

85. What is loadmask and its use?

Ans:

Loadmask is used to prevent any other operation by showing loading(or Custom message) to the user until data gets rendered to the grid. Loadmask: true; is the property to show loadmask while data getting rendered to the grid.

86. What is renderer and its use?

Ans:

Renderer is used when we want to manipulate the data which we get from store to show manipulated data based on some criteria. It is a column property can be used as –

renderer: function(value, metadata, record, rowIndex, colIndex, store){
// logic to perform
}

87. How to get value of an element in Ext JS?

Ans:

Ext.getCmp(‘id’).getValue();

88. How to hide column in the grid?

Ans:

Hidden: true;

89. What is the property for sorting in the grid?

Ans:

Sortable: true; which is default true.

90. How to write before and after load events in the store?

Ans:

grid.getStore().on ({
beforeload : function(store) {
// perform some operation
},
load : {
fn : function(store) {
//perform some operation
},
scope : this
}
store.load();
});

 

91. How Ext JS 6 can be used for both desktop and mobile applications?

Ans:

Ext JS 6 has toolkit package with which it can include visual elements of both the frameworks (Ext JS and Sencha Touch).
It can be added as –
‘toolkit’: ‘classic’, // or ‘modern’
If toolkit is classic it includes Ext JS desktop application framework.
And if toolkit is modern then it includes sencha touch mobile application framework.

92. What is Ext JS?

Ans:

Ext JS stands for extended JavaScript. It is a JavaScript framework to develop rich UI web based desktop applications.

93. Ext JS is extended on which library?

Ans:

It is a Sencha product which is extended from YUI (Yahoo user interface).

94. What are the main library files to add in HTML page?

Ans:

These are the main files to include in HTML page to run Ext JS code –
Ext-all.js
Ext-all.css

95. Explain features of Ext JS.

Ans:

  • Customizable UI widgets with collection of rich UI such as Grids, pivot grids, forms, charts, trees.
  • Code compatibility of new versions with the older one.
  • A flexible layout manager helps to organize the display of data and content across multiple browsers, devices, and screen sizes.
  • Advance data package decouples the UI widgets from the data layer. The data package allows client-side collection of data using highly functional models that enable features such as
  • sorting and filtering.
  • It is protocol agnostic, and can access data from any back-end source.
  • Customizable Themes Ext JS widgets are available in multiple out-of-the-box themes that are consistent across platforms.

96. Explain advantage of using Ext JS.

Ans:

  • Streamlines cross-platform development across desktops, tablets, and smartphones — for both modern and legacy browsers.
  • Increases the productivity of development teams by integrating into enterprise development environments via IDE plugins.
  • Reduces the cost of web application development.
  • Empowers teams to create apps with a compelling user experience.
  • It has set of widgets for making UI powerful and easy.
  • It follows MVC architecture so highly readable code.

97. Explain limitations of using Ext JS.

Ans:

The size of library is large around 500 KB which makes initial loading time more and makes application slow.
HTML is full of< DIV>tags makes it complex and difficult to debug.
According to general public license policy it is free for open source applications but paid for commercial applications.
Some times for loading even simple things requires few lines of coding which is simpler in plain html or Jquery.
Need quite experienced developer for developing Ext JS applications.

98. What are the browser Ext JS supports?

Ans:

Ext JS supports cross browser compatibility, it supports all major browsers as –

  • IE 6 and above
  • Firefox 3.6 and above
  • Chrome10 and above
  • Safari 4 and above
  • Opera 11 and above

99. Ext JS supports which architecture?

Ans:

Ext JS 4+ supports MVC (Model view controller) architecture. From Ext JS 5 it started supporting MVVM (Model View Viewmodel) also.

100. What is the latest version of Ext JS and its benefits?

Ans:

Ext JS 6 is the latest version of Ext JS which has major benefit that it can be used for both desktop and as well as mobile applications. Basically it is a merge of Ext JS (desktop applications) and Sencha touch (mobile application).



 

101. Advice for the developer who are going to use it for the first time.

Ans:

Ext JS is a JavaScript framework so to start using it you should use have prior knowledge of HTML and JS (not expert level but should have basic understanding). Then it takes to understand the basic so give it time and learn gradually.

102. Difference between Ext JS and jQuery.

Ans:

Both the frameworks are quite different we can compare Ext JS and jQuery UI as Ext JS is full-fledged UI rich framework. But still Ext JS has much more components then jQuery UI.

103. Difference between Ext JS and Angular JS.

Ans:

Parameter

Ext JS

Angular JS

Rich UI

Ext JS provides rich UI options such as forms , grid, charts

Angular JS does not provide rich UI inbuilt

Rich theme UI components

Ext JS provides multiple themes inbuilt

Angular JS does not provide Rich UI it has to be integrated with AngularUI, AngularBootstarp etc.

Cross browser compatibility

Ext JS provide cross browser compatibility it works for almost all the browsers IE6+, FF, Chrome, Safari, Opera etc.

Angular JS has to use third party library such as jQuery, jqLite for solving this purpose.

Automatic testing support

Possible only with external tools

Provides inbuilt.

Two way data binding

In Ext JS 5 two way binding is included.

It supports two way binding start from first version.

Performance

Ext JS is comparatively heavier and slower.

Angular JS is light weight framework than Ext JS

Build tools

Ext JS uses Sencha cmd tool for builds

Angular JS uses third party tools such as grunt.