DEV Community

Cover image for 7 important concepts in JavaScript - JavaScript Basics - Lesson 001
correatech
correatech

Posted on

7 important concepts in JavaScript - JavaScript Basics - Lesson 001

In this lesson, you will learn about seven important concepts in JavaScript programming language.

These concepts are important to understand JavaScript in a clear way and to understand how to write better source codes.

Concept 01) Host Facilities

JavaScript has Core Language Resources and Host Facilities.

The Core Language Resources are features like as: arithmetic operators, logic operators, for-loop statements, etc. They are resources of language itself.

The Host Facilities are resources from where your code is being interpreted (Host Environment), like as console.log, console.error, console.info, etc.

Concept 02) Prototype-Based

JavaScript is prototype-based, rather than class-based like Java.

In class-based languages, the objects use a class as a static template. You cannot change the class in runtime, and the class is not an object ready-to-use itself.

In prototype-based JavaScript, the objects use a prototype as a dynamic template. You can change the prototype in runtime, and the prototype is an object ready-to-use itself.

Concept 03) Garbage Collected

JavaScript automatically allocates and releases the memory according is needed by your source code.

The memory is allocated when you create an object. And is released when the object is not being used.

Concept 04) Hoisting

JavaScript allows declared variables (using var) and declared functions to be accessed anytime.

Concept 05) Multi-Paradigm

JavaScript supports different programming paradigms (programming techniques), combined or not.

Concept 06) Object-Based

In JavaScript, all things are within an object. Including variables in the global variables.

Concept 07) General Purpose

Using JavaScript you can make applications for different platforms, not only to the web and not only to the client-side.

For example: using NodeJS you can write code to the server-side, and using React Native you can write code to the Smartphones.

References

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Introduction

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Grammar_and_types

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Details_of_the_Object_Model

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_chain

Important

My native language is Portuguese, you can help me improve the Grammar and Vocabulary commenting to the article or sending me a private message. Thanks!

Buy me a coffe

https://www.buymeacoffee.com/correatech

Top comments (0)