1. What Is The Difference Between Html And Xhtml?

HTML is HyperText Markup Language used to develop the website.

XHTML is modern version of HTML 4. XHTML is an HTML that follows the XML rules which should be well-formed.

2. Tell us in CoffeeScript how clone-function is useful?

Clone function is useful in creating a complete new object in Coffee Script by

☛ Copying all attributes from the source object to the new object
☛ Repeating the steps of copying attributes from the source object for all sub-objects by calling the clone-function
☛ Creating a new object as the source object

3. Tell me how To Increase Page Performance?

☛ Sprites, compressed images, smaller images;
☛ include JavaScript at the bottom of the page;
☛ minify or concatenate your CSS and JavaScript; and
☛ caching.

4. Explain me functional programming in JavaScript?

Functional programming is one of the key paradigms that makes JavaScript stand out from other languages. Look for examples of functional purity, first-class functions, higher-order functions, or using functions as arguments and values. It's also a good sign if they have past experience working with functional languages like Lisp, Haskell, Erlang, or Clojure.

5. Do you know what is CoffeeScript?

CoffeeScript is a small programming language that compiles into JavaScript. It helps to write JavaScript code better by providing you with a more consistent syntax and avoiding the irregular nature of JavaScript language

The basic rule for Coffee Script:
☛ Whitespace matters: There are no curly braces in CoffeeScript
☛ No parentheses: Functions that take arguments do not require parentheses

6. Tell us why Do We Need To Use W3c Standard Code?

The goals of such standards are to ensure cross-platform compatibility and more compact file sizes. The focus of these standards has been to separate "content" from "formatting" by implementing CSS. It eases maintenance and development.

7. Tell me what Is A Closure?

Closures are expressions, usually functions, which can work with variables set within a certain context. Or, to try and make it easier, inner functions referring to local variables of its outer function create closures.

8. Tell me a time that you used Prototypal OO in JavaScript?

Prototypal OO is the other major programming paradigm that really lets JavaScript shine-objects linked to other objects (OLOO). You're looking for knowledge of when and where to use prototypes, liberal use of “Object.assign()” or mixins, and a solid grasp of concepts like delegation and concatenative inheritance.

9. Please tell me what is a Thread-Local object in Python Flask?

Flask uses thread local objects internally so that user don't have to pass objects around from function to function within a request in order to stay threadsafe. This approach is useful, but it requires a valid request context for dependency injection or when attempting to reuse code which uses a value pegged to the request.

10. Tell me some Common Ie6 Bugs And How You Dealt With Them?

Ie6 is not dead, just ask China which represents a nice chunk of the worlds online population. Your pages should at least be functional on IE6, unless you dont care about half the worlds population.

11. Explain me what Is Event Delegation?

Event delegation allows you to avoid adding event listeners for specific nodes. Instead, you can add a single event listener to a parent element.

12. Explain me where Do You Place Your Javascript On The Page?

It may depend on what you are using it for. There is some debate on this but generally a good question to ask to get an understanding of the JS knowledge.

13. Tell us what are the basic rules to remember for Coffee Script?

The basic rule for Coffee Script

☛ Whitespace matters: There are no curly braces in CoffeeScript
☛ No parentheses: Functions that take arguments do not require parentheses

14. Please explain when would you use GET and POST requests?

There are several technical differences between these two types of requests, regarding length limitation, security, caching and a few others. But if someone asks you WHEN would you use it, I'd say one of the most important points that any front-end developer should take into account is that we should only use GET for idempotent requests, it means requests that don't make significant changes in the backend system or database but if you do need to make inserts, updates or deletes in a database, trigger emails or any other major action, POST is recommended.

15. Do you know the Difference Between == And === ?

The 3 equal signs mean "equality without type coercion". Using the triple equals, the values must be equal in type as well.

☛ == is equal to
☛ === is exactly equal to (value and type)
☛ 0==false // true
☛ 0===false // false, because they are of a different type
☛ 1=="1" // true, auto type coercion
☛ 1==="1" // false, because they are of a different type

16. What Is Stringify?

stringify is used to transform JSON into a string.

17. Do you know what Is Web A Application?

A great question to feel out the depth of the applicants knowledge and experience.

A web application is an application utilizing web and [web] browser technologies to accomplish one or more tasks over a network, typically through a [web] browser.

18. Please explain what Event Bubbling Is?

Event bubbling causes all events in the child nodes to be automatically passed to its parent nodes. The benefit of this method is speed because the code only needs to traverse the DOM tree once.

19. Tell us which frameworks are you most familiar with?

You can tell a lot about a programmer from the frameworks they're familiar with-AngularJS, React, jQuery, Backbone, Aurelia, and Meteor are just some of the more popular ones available. The key here is to make sure the developer you're engaging has experience with the framework you've chosen for your project.

20. Explain what are the disadvantages of using JavaScript?

Experienced coders won't just be able to rave about their favorite language's strengths-they will also be able to talk about its weaknesses. JavaScript's main weakness is security. Look for answers on how it can be exploited. A secondary weakness is JavaScript's ubiquity and versatility-it can be a double-edged sword in that there's a lot of room for programming quirks that can lead to inconsistent performance across different platforms.

21. Tell me what are the skills required?

The skills required for the Front End Developer includes

☛ HTML
☛ CSS
☛ JavaScript
☛ JQuery

Additional Skills
Some additional skills that might be helpful will be

☛ Knowledge of cross browser testing
☛ Knowledge of CMS like WordPress, Joomla or Drupal
☛ Knowledge of PHP and OOP's ( object oriented programming)
☛ Knowledge of SEO, and tools like Flash and Dreamweaver

22. Tell me what Is An Anonymous Function?

Anonymous functions are functions without a name. They are stored in a variable and are automatically invoked (called) using the variable name.

var x = function(a, b) {
console.log(a * b)
}
x(3, 5); // 15

23. Tell me what is a RESTful Web Service?

REST stands for Representational State Transfer, an architectural style that has largely been adopted as a best practice for building web and mobile applications. RESTful services are designed to be lightweight, easy to maintain, and scaleable. They are typically based on the HTTP protocol, make explicit use of HTTP methods (GET, POST, PUT, DELETE), are stateless, use intuitive URIs, and transfer XML/JSON data between the server and the client.

24. Tell me difference between null and undefined?

This can be tricky and the best way to keep in your head is to memorise because if you try to relate javascript null to other languages, it will get more confusing.
In javascript, null is an object with no value and undefined is a type.

typeof null; // "object"
typeof undefined; // "undefined"
var a;
var b = null;
a == b; // "true" because their values are the same
a === b; // "false". they have different types

25. Explain me why Do We Recommend External Css Or Javascript Versus Inline?

Inline CSS or JavaScript has bad impact on site performance.

Your HTML code will weigh more as you use inline scripts, whereas external scripts reduces HTML file size which helps fast rendering of webpage.

HTML code will never be cached so inline scripts. Contrary to that, external dependencies, such as CSS and JavaScript files, will be cached by the visitor's web browser. So it reduces https requests each time user click through web pages.

It is hard to maintain Inline CSS and JavaScript code. Where having code in just one centralized location is a lot more preferable than changing exactly the same kind of code snippets spread all over the files in the web site.

26. Explain me how To Optimize The Page Using Front End Code Or Technology?

Below is the list of best practices for front-end technology, which helps to optimize page.

☛ Improve server response by reducing resource usage per page
☛ Combine all external CSS files into one file
☛ Combine all external JS files into one file
☛ Use responsive design instead of making device based redirects
☛ Use asynchronous Javascript and remove block level Javascript
☛ Use Minify version of stylesheet and javascript.
☛ Optimize Image and use correct format of Image. Use the lazy loading design pattern for large size of images.
☛ Use browser side cache with Cache control.
☛ Avoid plugins to drive functionality.
☛ Configure view port and use CSS best practices.
☛ Prioritize visible content.
☛ Load style-sheets in header and script in footer.

27. Tell me do You Know What Is A Sprite? How Is It Applied Using Css? What Is The Benefit?

A image sprite is a collection of images put into one single image.
Using css positioning you can show and hide different parts of the sprite depending on what you need.
Sprites reduces the number of http requsts thus reducing load time of page and bandwidth

Buy Buttons using Sprite as background:
Both buttons use the same background image. The only difference is in the positioning.

28. Explain what is the difference between WebGL and three.js?

WebGL:
☛ WebGL allows you to control the GPU in more direct way
☛ It is more an “immediate mode”
☛ It does not have additional support for text, for shaders built, for picking, etc.

Three.js:
☛ Three.js is built on top of WebGL and allows you to take care of lot of things like what objects to draw each frame
☛ It is more a “retained mode”
☛ It does have an additional support for text, for picking, for object hierarchy, etc.

29. Explain me have you already used MVC before? What you like/dislike about it?

As the UI gets more and more complex we need some good ways to keep it more and more maintainable and reusable, and Some MVC frameworks for javascript have been widely adopted lately and it's a good plus if you have already used before and knows what's the benefits of them. The most famous MVC frameworks are backbone.js and angular.js, it's hard to not hear about them.

There are many advantages in using these frameworks, I can point out some of them:

Organization: Forces your webapp to follow a well structured pattern;

Maintainable: With organization comes an easy to maintain code;

UI Binding: Some frameworks allow you to do that. So everytime your model changes, the view reflects it and vice-versa;

Decoupled client: MVC frameworks like backbone.js incentivise you to use REST API's though their urlRoot attribute in their Models;

Reusable components: Create reusable visual components;

Single-page apps: Build single-page apps with Ajax requests;

Friendly URL's: Native support for client-side url mapping;

30. Tell us how experienced are you with MEAN?

The MEAN (MongoDB, Express, AngularJS, and Node.js) stack is the most popular open-source JavaScript software stack available for building dynamic web apps-the primary advantage being that you can write both the server-side and client-side halves of the web project entirely in JavaScript. Even if you aren't intending to use MEAN for your project, you can still learn a lot about the developer when they recount their experiences using JavaScript for different aspects of web development.

31. Tell me who is Front End Developer? What he does?

In a website, front-end is the part that users accesses while interacting with the website including images, buttons, colours, animations, forms, typography etc.

While the frontend developer is a programmer that codes the front end of a website and ensures that a visibility of site remains same throughout different web browsers.

32. Do you know what Is The Difference Between A Prototype And A Class?

Prototype-based inheritance allows you to create new objects with a single operator; class-based inheritance allows you to create new objects through instantiation. Prototypes are more concrete than classes, as they are examples of objects rather than descriptions of format and instantiation.

Prototypes are important in JavaScript because JavaScript does not have classical inheritance based on classes; all inheritances happen through prototypes. If the JavaScript runtime can't find an object's property, it looks to the object's prototype, and continues up the prototype chain until the property is found.

34. Tell me what Is A Callback Function?

JavaScript is read line by line. Sometimes, this can result in what seems like a subsequent line of code being executed prior to an earlier line of code. A callback function is used to prevent this from happening, because it is not called until the previous line of code has fully executed.

35. Tell me the differences between one-way data flow and two-way data binding?

This question may seem self-explanatory, but what you're looking for is a developer who can demonstrate solid understanding of how data flows throughout the application. In two-way data binding, changes to the UI and changes to the model occur asynchronously-a change on one end is reflected on the other. In one-way data binding, data only flows one way, and any changes that the user makes to the view will not be reflected in the model until the two are synced. Angular makes implementing two-way binding a snap, whereas React would be your framework of choice for deterministic one-way data flow.