Skip to content
Sandny Blog
  • Home
  • Java
  • JavaScript
  • AWS
  • Embedded
  • About
Introduction to Javascript JavaScript

01. Javascript Guide – Introduction to Javascript

  • December 11, 2019December 15, 2019
  • by Coder Kai

Introduction to Javascript and the language

In this introduction to Javascript, we are going to discuss the following points.

  1. Javascript, the language
  2. Early Javascript
  3. Characteristics
  4. Tools

01. Javascript

Initially, Javascript as the name itself was a scripting language for interactive web pages and applications. Now javascript has developed into a complete language that can do almost all of the comprehensive tasks or command that any LISP type language can perform.

Introduction to Javascript

A common misconception is, javascript had a connection with Java. Java is a strongly-typed, compile language that doesn’t bring any resemblance to Javascript. It is completely independent of Java.

Javascript is an Object-Oriented Functional language. It has most of the common properties of Object-Oriented principles. But language itself has own way of handling functional concepts.

  • Javascript – Initially created for interactive web pages.
  • A complete programming language.
  • Javascript – completely independent of Java.
  • Object-oriented, Functional Language.

You can watch the content of this article from following video as well.

02. Early JS

Earlier, Javascript was known as LiveScript. It had been developed to make web pages more interactive by breaking the programmable barrier between the browser and the content.

Later in different stages, LiveScript became Javascript. At this stage, SUN Microsystem who was owning Java had trademark issues with Javascript. It somehow dragged along with Netscape who were developing Javascript.

Javascript had an equivalent in Microsoft as JScript, which was also known as J++ in later stages.

Currently, ECMA European Computer Manufacturers maintain the Javascript standards. New applications use the latest ECMA 6 standard widely. For the browsers or engines that don’t support the ECMA 6, there are polyfills that provide the functionality need. Babel is the most used polyfill when using javascript.

All together Javascript is a small but complete language that can do operations its own way due to its characteristics.

03. Characteristics

Not precompiled. The source code itself is delivered to run.

Javascript is not a pre-compiled language. The source code will be delivered to be executed. We commonly term these executors as Engines. Some common examples are

  1. V8 engine – used in Chrome, Opera browsers
  2. SpiderMonkey – used in Mozilla Firefox.

The engine compiles and runs the code realtime using Just In Compiler or JIT principles. As the words implied, it will compile the code in runtime and reuse it again and again by optimizing on invocation. It’s for the latter part of these tutorials.

Loosely Typed

Javascript is loosely typed. That means you don’t have to explicitly specify the type of variables or objects at the declaration. There are many discussions around this. Supplement language definitions like Typescript have tried to make it type friendly for programmers who need it. On the bottom line, this is the nature of the language you will need to understand and adapt when programming with javascript.

Inheritance by prototype

Javascript uses inheritance by prototyping. It will use the properties of the super objects using prototype chaining. It is a very smart way to exhibit inheritance properties in object-oriented languages.

Dynamic Object Properties

And also, Javascript has dynamic object properties and assignments. You can assign and properties that are not defined on the object creation. Also, you can change the defined properties as well.

Functional and use lambda concepts

Also importantly, Javascript is functional. It uses lambda concepts as a language. Basically you can assign function as attributes of objects and pass them as parameters. This will allow concepts like function currying which we can use very efficiently when programming.

04. Tools you will need

As for the tools, you can run Javascript using the Chrome console. You can easily access it from the developer tools of your Chrome browser.

Chrome > More Tools > Developer Tools (Cmd + Opt + I)

Secondly, you can use Firefox web console which can be useful with multiline scripting.

Tools > Web Developer > Web Console (Cmd + Opt + K)

Other than that you can use SaaS tools like JSBin to work and save your projects on the cloud.

We will be using mostly the Firefox console for Introduction to Javascript tutorials and Vim/VScode for Node.js tutorials.

In the next episode, we will be discussing the data types in Javascript.

02. Javascript Guide – Numbers

How to host GoDaddy domain with AWS EC2
02. Javascript Guide – Numbers
Coder Kai
A humble developer
early javascript functional language introduction to javascript javascript javascript characteristics programming

Related articles

Multiple refs for an array of React Elements
Using multiple refs for an…
Immutable and Mutable Values in Javascript
07. Immutable and Mutable Values…
wrapper objects in javascript
06. Wrapper objects in Javascript
globals undefined and null values in javascript
05 Global, null and undefined…
Javascript Booleans and Equality
04. Javascript Guide Booleans and…
How to add Chakra UI Animations
Chakra UI Animations
SSL Websocket using Nginx Proxy
SSL Websocket proxy with Nginx…
Change python version correctly
Python is not setting correct…
optimize React.js load time
How to optimize React.js app…
Multiple refs for an array of React Elements
How to use IntersectionObserver to…
Multiple refs for an array of React Elements
How to dismiss dropdowns when…
Javascript guide Strings
03. Javascript Guide – Strings
How to fetch data with useEffect
How to fetch data with…
add styles to stripe elements
How to add styles to…
Typescript
How to use Typescript with…
how to optimize react-native map view
How to optimize react-native map…
debounce with react hooks
Avoid multiple clicks using debounce…
Numbers inJavascript
02. Javascript Guide – Numbers
Nginx Load Balancer with docker…
Create React App Using npx

Categories

  • android 3
  • Apollo Client 1
  • AWS 8
    • AppSync 5
    • EC2 1
    • EKS 1
    • Route53 1
    • S3 1
  • AWS Amplify 1
  • Chakra UI 1
  • Docker 1
  • Embedded 1
  • EmberJS 1
  • FCM 1
  • Godaddy 1
  • GraphQL 3
  • ios 1
  • Jasper 1
  • Java 10
    • Java 11 1
    • Java 14 1
  • JavaEE 2
  • JavaScript 39
    • Express.js 4
    • Javascript Guide 7
    • Node.js 3
    • react-native 4
    • React.js 17
    • Typescript 1
  • Kubernetes 1
  • machine learning 1
  • Maven 2
  • OCaml 3
  • PostgreSQL 1
  • Python 2
  • react-native 4
  • ReactJS 3
  • sass 1
  • Server 6
  • spark 1
  • Terraform 2
  • Ubuntu 4
  • Uncategorized 1
  • webpack 2

Recent Comments

  • Pamela587 on Chakra UI Animations
  • Alicia1760 on Chakra UI Animations
  • vneuweluso on How to add styles to stripe elements without using CardElement

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org

Archives

  • October 2022 3
  • September 2022 7
  • May 2022 1
  • December 2021 1
  • August 2021 1
  • July 2021 6
  • June 2021 3
  • February 2021 1
  • July 2020 1
  • December 2019 5
  • November 2019 6
  • October 2019 3
  • August 2019 1
  • March 2019 1
  • February 2019 1
  • January 2019 2
  • December 2018 1
  • September 2018 2
  • August 2018 1
  • June 2018 1
  • February 2018 1
  • November 2017 2
  • October 2017 5
  • September 2017 1
  • June 2017 1
  • May 2017 10
Sandny Blog space
Theme by Colorlib Powered by WordPress