What are the different ways in which you can create a javascript object? Choose ALL the right options
var object = { prop1: "value1", prop2 : "value2"};
var object = new Object();
var object = {};
var object = Object.create({});
How to create a constructor function?
Any function when prefixed with "new" keyword at the time of invocation acts like a constructor function.
Name of the function should be "constructor"
You have to assign a property named "constructor" and assign a function to it
Constructor function cannot be created in javascript
How do you demonstrate inheritance in Javascript? Consider "BaseClass" is the name of the parent class and "SubClass" is the name of the sub-class.
class SubClass extends BaseClass { }
function SubClass() { BaseClass.apply(this, Array.prototype.slice.call(arguments, 0); } SubClass.prototype = Object.create(BaseClass.prototype);
function SubClass() { BaseClass.apply(this, Array.prototype.slice.call(arguments, 0); }
function SubClass() { super(Array.prototype.slice.call(arguments, 0)); } SubClass.prototype = Object.create(BaseClass.prototype);
When does a Closure scope gets created?
Every function has a Closure scope associated with it
Every time a inner function is defined within another function
When an inner function is defined within another function and that refers to variables that are available at the defining function (local variables of enclosing functions and its parent right until global)
A closure keyword is available. When a variable is declared with that modifier, closure scope is created
How can I create a constant in Javascript 5?
const myConstant = 3.414;
var myConstant = { value : "3.414";}
var myConstant = new Object(3.414)
var myConstant = Object.create(null, { value: { configurable : false, writable : false, enumerable : false, value : 3.414 } });
How does Javascript achieve Inheritance?
Inheritance using extends keyword
Inheritance through Constructor chaining
Inheritance through Prototype chaining
Inheritance achieved programmatically
Javascript does not support overriding?
It is a better practice (in terms of performance) to create deep inheritance and access methods in the ancestor classes.
It is possible to create namespaces in Javascript.
It is possible to implement Singleton pattern in javascript.
Every Javascript function is an object with the constructor as "Function"
How can I create immutable property in a javascript object?
Using closure
Using JSON
Using Object.defineProperty and specify only get and no set function
By making the property private
How to ensure that a property in Javscript object is never removed or re-configured
Define the property with private modifier
It is not possible to stop removing the property from object
Every property defined using "Object.defineProperty" cannot be removed
Using Object.defineProperty and setting "configurable" to false
How can I avoid creating global variables and functions used most often for initialization?
Using temporary inner / anonymous function functions
Using just closure
Using constructor
Using window object
How can I create Block - scoped variable in ES-6?
Using var
Using let
Using const
Using def