Inheritance in Object-oriented JavaScript

Inheritance in JavaScript is called prototypal inheritance. Objects inherit from objects. When we create an object from a class,

it always inherits from

In Java speak, this is like saying  “any class inherits from Object class”.

If… Continue Reading


JavaScript Static Properties and Methods

In JavaScript Object Creation and Object Methods and Properties, we talked about methods and properties that are tied to an object. Without an object, these properties are unusable and inaccessible to other codes. There is another type of members – static methods and properties. These are only accessible via the class itself. These are even inaccessible if referenced via objects. Continue Reading


Type Checking in JavaScript

Okay, JavaScript is a loosely-typed language, which means you do not declare the data type of a variable explicitly. In a basic variable assignment expression, e.g., var i = 4;, the value that assigns to the variable determines the data type of the variable. As you assign different types of data to the same variable, its data type changes as well. Given the nature of JavaScript, finding out what data type a variable represents before using it is very important. Continue Reading


Working with Reference Types in JavaScript

JavaScript has both primitive and reference types. It has three primitive types: string, numeric, and boolean. Internally, these are small and fixed-sized collection of bytes that are easily and predictably manipulated at the low (primitive) levels of the JavaScript interpreter. Example of strings are ‘This is a string’ and “This is another string”. Numeric values – 1, and 3.1416. Boolean values – true or false. On the other hand, reference types are different. They include objects (including JS built-in objects), Arrays, and functions. Essentially, they can have any number of properties or elements with various types (both primitives and references), so they cannot be manipulated as easily as fixed-size primitive v Continue Reading


JavaScript scope in functions vs Java scope in methods

For years, JavaScript to me was a mere validation tool or script for web applications. I hated it. I avoided using it. This time JavaScript gets the same respect from me as Java does. If you plan to “own” (or master if you can) JavaScript and you are coming from blocked-scoped languages like Java, C#, C and C++, this is one of key things you need to keep in mind… Continue Reading