JavaScript Interview Questions

  • (4.0)

If you're looking for JavaScript Interview Questions for Experienced or Freshers, you are at right place. There are lot of opportunities from many reputed companies in the world. According to research JavaScript has a market share of about 54.87%. So, You still have opportunity to move ahead in your career in JavaScript Development. Mindmajix offers Advanced JavaScript Interview Questions 2018 that helps you in cracking your interview & acquire dream career as JavaScript Developer.

Are you interested in taking up for JavaScript Course? Enroll for Free Demo on  JavaScript Online Training.

Q. What is JavaScript?
JavaScript is a lightweight, interpreted programming language with object-oriented capabilities that allows you to build interactivity into otherwise static HTML pages. The general-purpose core of the language has been embedded in Netscape, Internet Explorer, and other web browsers.

Q. JavaScript Vs Jscript?

JavaScript and Jscript are almost similar, whereas JavaScript was developed by Netscape. Microsoft reverse engineered Javascript and called it JScript.

Q. How to create a class?
JavaScript does not have a class definition. To mimic classes in JavaScript functions can be used to declare a class.
Let’s create a student class in JavaScript which takes two parameters name and roll as property. The code will look like below,

Function Student (name .roll){ = name;
this.roll = roll;

Q. What is callback?
A callback is a plain JavaScript function passed to some method as an argument or option. Some callbacks are just events, called to give the user a chance to react when a certain state is triggered.

Q. How to create an object?
An object in JavaScript can be created using two was:
New Key word: 
To create a student object from the above student class we can call the Student function using new keyword.
var student1 = new Student(‘santosh’,2)
Anonymous Object:
Anonymous objects can be created using pair of curls’ braces containing property name and value pairs.
Var rose = {‘color’: ‘red’}

Q.How to open URL in new tab in javascript?
I think cosntant not exist in javascript. But you can follow same type convention to declare constant.

var CONSTANT_NAME = "constant value";

Q. How to declare a private and a public member?
Private members are declared using var keyword and constructor function.

Function Student (name, roll){
var id= ABCD123; = name;
this.roll = roll;

When a Student object vi1l be created the propertied name and roll will be accessible using dot operator but id will not be accessible as it behaves as a private member and return undefined on call.

The above chrome console is showing a student1 object is property is accessible as it is showing sandeep on call. So name is a public property for the student object. But id property is not accessible and returned undefined on call. This shows id is a private property in student1 object.

Q. 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.

Q. What is prototype property?
By Using Prototype we can add new members to an existing object. Every JavaScript object has this property internally. Initially it is an empty object.


function Student (name, roll){ = name;
this.roll = roll;

var student1 = new Student(’sangeeta’,30);
Student.prototype.mark = 100;
Checkout the below chrome console for the use of Protype.
Initially the student1 object has only two properties name and roll. By using prototype a new property mark has been added to student object with a value of 100.Now the console shows that the mark property is also added to the existing student1 object.

Q. How to convert a string to lowercase?

var str='This is testing String';
str = str.toLowerCase();

Q. What is constructor property?
Constructor property of an object maintains a reference to its creator function.
Let us checkout an example by creating a student object and calling the constructor property on it.

function Student( name, mark){
this. name = name;
this. mark =mark;
var student 1 = new Student (’sandeep’, 123);
console.log (student1.constructor);
function Student(name, mark){
this. name = name;
this. mark = mark;
var student1 = new Student(’sandeep’ ,123);
console .log(student1.constructor);

Checkout the following screen shot for above code in chrome console. The console log is printing the referenced function by student1 object.

Q.What Is Scope In JavaScript?

The scope determines the accessibility of variables, objects, and functions in particular part of your code.
In JavaScript, the scope is of two types.
1. Global Scope
2. Local Scope

Q. How to call other class methods?
Using call () and apply () method we can use methods from different context to the current context. It is really helpful in reusability of code and context binding.
call (): It is used to calls a function with a given this value and arguments provided individually.
apply (): It is used to call a function with a given this value and arguments provided as an array.
Below code has two function getTypeOfNumber () and getTypeOfAllNumber. The details pf these functions are below.
getTypeOfNumber: This method takes single number as parameter and return the type either Even or Odd.
getTypeOfAllNumber: This method takes array of numbers as parameter and returns the types in an array with Even or Odd.

var MyNumber = {


var type = (number % 2 === 0)? “Even”: “Odd”;
return type;

getTpeOfAll Number:

function O{
var result = [J,i=o:
for (; i < arguments. length; i++){
var type =
MyNumber. GetTypeOfNumber. call(null,arguinents[i]);
result .push(type)
return result;

var typeOfNumber = MvNumber.getTypeOfNumber. call ( null, 21.)
var tvpeOfAflNumber = MvNumber.getTypeOfAllNumber. apply(null [2,4,5,78,21])
Below screenshot shows output of the above code Firebug console.

Q. Explain method overriding with an Example?
We can override any inbuilt method of JavaScript by declaring its definition again. The existing definition is accessible ot override by the Prototype property. Consider the below example, Split () class. But we have overridden its definition using its prototype property.
Below screen shows the inbuilt behavior of split () method. It has divided the string into an array of element.

Below screenshot shows the new overridden definition of split () method. It is normally returns string “I am overridden”.

Q. How To Read A Cookie Using JavaScript?
To read a Cookie, we have to access the value of the object. This string maintains a list of pairs that is separated with semicolons. Where,

"name" is the name of a cookie and
"value" is its string value.

We use String function to break the object to sub-strings. Each of these sub-strings contains a key-value pair which represents the information related to a Cookie.

Q. How to inherit form a class?
Inheritance can be achieved in JavaScript using Prototype property.

We need to follow 2 steps to create an inheritance.

Child class prototype should point to parent class object.
.prototype = new ();

Reset the child class prototype constructor to point self. .prototype .
constructor = student;

Below example shows ScieneStudent class as a child class of Student class. As the method showMyType () is available for Science Student object.

Function Student (name){;
Student .prototype.savIyTvpe = function(){
consoe.1og (”I am student type”)
function Science Student (name){
Science Student .prototvpe = new Student();
ScienceStudent.prototvpe.constructor = Science Student;
var student2 = new Science Student(sangeeta’);
console.log(student2 .sayMyType ());

Check out the below screen shot for the output of the above code in the developer console.

To test the type of an object belongs to a class or not instanceOf can be used. This returns a Boolean value, TRUE for an object belongs to a class or else FAlSE. Check the below screen shot for the test of student2 object using instance Of.

Q. What is a prompt box?
A prompt box is a box which allows the user to enter input by providing a text box. Label and box will be provided to enter the text or number.

Q. What is differential inheritance?
Differential Inheritance is a common prototype-oriented model that uses the concept that most objects are derived from other, more generic objects, and only differ in a few small aspects. Each object maintains a reference to its prototype and a table of properties that are different.

Check Out JavaScript Tutorials

Q. What is Object.create () method do?
ECMAScript 5.1 has this method in its specification. This method can be used to create a new object with given prototype object and properties. The syntax of this method is listed below.
Object. Create (proto [, properties Object])

Below code has a Student class functioned with name property and the prototype object has a method getStudentName () which return the name of the student. A new student1 object has been creates using Object.Create() method by passing the prototype object of Student with value of the name as sandeep. Then the getStudentName() method is called on student1 object and logged in the console.

function Student(name) { = name;
Student.prototvpe = {
getStudentName: function() {
return “Name of Student is :“ +
var student 1 = Object .create(Student .prototype); = “Sandeep”:
console.log(student1 .getStudentName () );

The following screenshot shows the output of the above code in the developer console.

Q. What do mean by NULL in Javascript?
The NULL value is used to represent no value or no object. It implies no object or null string, no valid boolean value, no number and no array object.

Q. Write a polyfill for Object.create() method if it is not present in the browser?
ECMAScript 5.1 has this method in its specification. If the browser is old then Object.create () method is not present.To resolve this we need to write a polyfill. Below code shows the polyfill for Object. Create () method.

//check if create method is present inside Object
if (tvpeof Object.create ! = ‘function’) {
I/define the create method
Object.create = (function() {
var Object = function() {};
return function (prototype) {
If (argurnents.length> 1) {
throw Error (’Second argument not supported’);
if (arguments. length> 1){
throw Error (‘Second argument not supported’);
if (typeof prototype ! = ‘object’) {
throw TypeError(’Argument must be an object’);
Object. prototype = prototype;
var result = new Object();
Object. prototype = null;
return result;

The above code checks if the create () method is already present inside the Object using if condition and comparing its type to function. If this condition true it means the create () method is not present. Then the polyfill code block gets executes and assigns the empty object to Object. Create property.

Q. How are JavaScript and ECMA Script related?
ECMA Script are like rules and guideline while Javascript is a scripting language used for web development.

Q. What is the purpose of Object.defineProperties () method?
ECMAScript 5.1 provides Object.defineProperties () method to create new properties to a defined object. It provides many configuration options to initialize these members. Below code shows the use of this method.

function Student (name) { = name;
var student 1 = Object .create(Student tvp,
properties ={
“subject”: {
value: “Computer”,
writable: true,
enumerable :true
“marks”: {
value: 0,
writable: false,
enumerable: true
Object. Define Properties (student1, properties); = “Sandeep”:
student 1 .subject = “Mathematics”;
student1 .marks=75;
console.log (student1);

In the above code a student1 object created using Object.create() method. Then some new properties like subject and marks are added to this object. The enumerable option decided whether the property can be enumerated as own property. Writable property decides whether the property is modifiable or not. The value property takes the default value of the property.
Below screenshot shows the output of the above code in the developer console.

Explore JavaScript Sample Resumes! Download & Edit, Get Noticed by Top Employers!Download Now!



Popular Courses in 2018

Get Updates on Tech posts, Interview & Certification questions and training schedules