JavaScript este cel mai utilizat limbaj de scriptare pe Pământ. Și are cel mai mare ecosistem de bibliotecă din orice limbaj de programare.

JavaScript este limbajul de bază al web și singurul limbaj de programare care poate rula în toate browserele web importante.

În special, JavaScript nu are nicio legătură cu Java. Verifică JavaScript: limbajul de programare cel mai neînțeles din lume.

Numele oficial al JavaScript este ECMAScript definit în Standard ECMA-262.

Dacă doriți să aflați mai multe despre limbajul JavaScript și de ce este atât de utilizat, citiți articolul lui Quincy Larson – Ce limbaj de programare ar trebui să învăț mai întâi? – sau urmărește asta videoclip inspirator de la Preethi Kasireddy.

Routech are un tutorial JavaScript aprofundat pe YouTube care vă va învăța toate elementele fundamentale în doar 3 ore.

Aflati JavaScript Curs complet de 134 de parti pentru

Câteva alte tutoriale JavaScript bune:

Referințe

JavaScript rapid

Provocări

Tutoriale

Exerciții

Editorii

Bloguri

Podcast-uri

Tutoriale video

Cărți

6 cărți despre JavaScript de Kyle Simpson, de la începător la avansat.

Introducere fantastică, temeinică la noțiunile de bază și caracteristicile JavaScript, completată cu cod interactiv în browser.

Ghid destul de aprofundat pentru programarea funcțională în JavaScript

Motoare JavaScript independente

Mozilla’s SpiderMonkey, primul motor JavaScript scris vreodată, utilizat în prezent în Mozilla Firefox.

V8, motorul JavaScript Google, utilizat în Google Chrome.

Google Apps Script, un interpret bazat pe cloud / pe partea serverului, care oferă control programatic „de tip macro” al serviciilor și documentelor Google Apps.

Node.js, construit deasupra V8, o platformă care permite ca aplicațiile de pe server să fie scrise în JavaScript.

ad-banner

Windows include JScript, o variantă JavaScript în Windows Script Host.

Chakra, o furcă a Jscript, este dezvoltată de Microsoft și utilizată în browserul Edge.

Mozilla oferă, de asemenea, Rhino, o implementare de JavaScript încorporat în Java, de obicei încorporat în aplicații Java pentru a oferi scripturi utilizatorilor finali.

WebKit (cu excepția proiectului Chromium) implementează motorul JavaScriptCore.

Cadruri JavaScript

Cele mai frecvent utilizate cadre JavaScript sunt React JS, Angular JS, jQuery și NodeJS. Pentru mai multe detalii, urmați acest lucru legătură.

Avantajele și dezavantajele JavaScript

La fel ca în toate limbajele de programare, JavaScript are anumite avantaje și dezavantaje de luat în considerare. Multe dintre acestea sunt legate de modul în care JavaScript este adesea executat direct în browserul unui client. Dar există și alte modalități de a utiliza JavaScript acum care îi permit să aibă aceleași avantaje ale limbajelor de pe server.

Avantajele JavaScript

  • VitezăJavaScript tinde să fie foarte rapid, deoarece este adesea rulat imediat în browserul clientului. Atâta timp cât nu necesită resurse externe, JavaScript nu este încetinit de apelurile către un server backend. De asemenea, toate browserele majore acceptă compilarea JIT (exact la timp) pentru JavaScript, ceea ce înseamnă că nu este nevoie să compilați codul înainte de al rula.
  • SimplitateSintaxa JavaScript a fost inspirată de Java și este relativ ușor de învățat în comparație cu alte limbaje populare, cum ar fi C ++.
  • PopularitateJavaScript este peste tot pe web și odată cu apariția Node.js, este din ce în ce mai utilizat pe backend. Există nenumărate resurse pentru a învăța JavaScript. Atât StackOverflow, cât și GitHub arată o cantitate din ce în ce mai mare de proiecte care utilizează JavaScript, iar tracțiunea pe care a câștigat-o în ultimii ani este de așteptat să crească.
  • InteroperabilitateSpre deosebire de PHP sau alte limbaje de scriptare, JavaScript poate fi inserat în orice pagină web. JavaScript poate fi utilizat în multe tipuri diferite de aplicații datorită suportului în alte limbi, cum ar fi Pearl și PHP.
  • Încărcare server JavaScript este partea clientului, deci reduce cererea de pe servere în general și este posibil ca aplicațiile simple să nu aibă deloc nevoie de un server.
  • Interfețe bogateJavaScript poate fi folosit pentru a crea caracteristici precum drag and drop și componente precum glisante, toate acestea îmbunătățind foarte mult interfața cu utilizatorul și experiența unui site.
  • Funcționalitate extinsăDezvoltatorii pot extinde funcționalitatea paginilor web scriind fragmente de JavaScript pentru programe de completare terță parte, cum ar fi Greasemonkey.
  • VersatilitateExistă multe modalități de a utiliza JavaScript prin intermediul serverelor Node.js. Dacă ați bootstrap Node.js cu Express, utilizați o bază de date de documente precum MongoDB și utilizați JavaScript pe frontend pentru clienți, este posibil să dezvoltați o aplicație JavaScript întreagă din față în spate folosind numai JavaScript.
  • ActualizăriDe la apariția ECMAScript 5 (specificația de scriptare pe care se bazează JavaScript), ECMA International s-a dedicat actualizării JavaScript anual. Până în prezent, am primit suport pentru browser pentru ES6 în 2017 și așteptăm cu nerăbdare ca ES7 să fie susținut în viitor.

Dezavantaje ale JavaScript-ului

  • Securitate din partea clientuluiDeoarece codul JavaScript este executat din partea clientului, erorile și neglijările pot fi uneori exploatate în scopuri rău intenționate. Din acest motiv, unii oameni aleg să dezactiveze complet JavaScript.
  • Suport pentru browserÎn timp ce scripturile de pe server produc întotdeauna aceeași ieșire, browsere diferite uneori interpretează codul JavaScript în mod diferit. În prezent, diferențele sunt minime și nu ar trebui să vă faceți griji cu privire la aceasta, atâta timp cât vă testați scriptul în toate browserele principale.

ES6

A 6-a ediție a ECMAScript se numește ES6.

Este, de asemenea, cunoscut sub numele de ES2015.

Modificările adaugă mult zahăr sintactic care permite dezvoltatorilor să creeze aplicații într-un stil orientat obiect.

Exemplu ES5:

var User = function () {
  function User(name) {
    this._name = name;
  }

  User.prototype.getName = function getName(x) {
    return 'Mr./Mrs. ' + this._name;
  };

  return User;
}();

Exemplu ES6:

class User {
  constructor(name) {
    this._name = name
  }

  getName() {
    return `Mr./Mrs. ${this._name}`
  }
}

Au fost introduse o mulțime de noi funcții de sintaxă, inclusiv:

  • clase
  • module
  • modelare
  • pentru / de bucle
  • expresii generatoare
  • funcții săgeată
  • colecții
  • promisiuni

În prezent, majoritatea funcțiilor sunt disponibile în toate browserele populare. tabel de compatibilitate conține toate informațiile despre disponibilitatea funcționalității tuturor browserelor moderne.

În mod frecvent, apar noi funcții care fac parte din succesorul ES7. O modalitate obișnuită este de a traduce JavaScript modern (ES6, ES7 și alte propuneri experimentale) în ES5. Acest lucru asigură faptul că și browserele vechi pot executa codul. Există instrumente de genul Babel care transformă JavaScript nou în ES5.

Pe lângă zahărul sintactic provenit din standardele ECMAScript, există caracteristici care necesită un Polyfill. De obicei, acestea sunt necesare, deoarece implementările întregii clase / metode au fost adăugate la standard.

Instanțarea obiectelor

În JavaScript și în majoritatea celorlalte limbi, un obiect conține o serie de proprietăți, care sunt o pereche cheie, de valoare. Există mai multe opțiuni disponibile atunci când trebuie să construiți un obiect.

Inițializați o variabilă obiect

Puteți crea un obiect cu proprietăți predefinite astfel:

let myObject = {
  name: "Dave",
  age: 33
}

Crearea unui obiect gol

Aceasta creează un obiect gol în variabila noastră myObject:

let myObject = new Object();

Când doriți să adăugați proprietăți la obiectul dvs., pur și simplu utilizați fie notația punct sau notarea paranteză cu numele proprietății la alegere:

myObject.name = "Johnny Mnemonic"
myObject["age"] = 55

Folosind o funcție constructor

Puteți defini o funcție constructor pe care o puteți utiliza pentru a vă crea obiectele:

function Kitten(name, cute, color) {
  this.name = name,
  this.cute = cute,
  this.color = color
}

Puteți defini o variabilă care conține o instanțiere a acestui obiect apelând funcția constructor:

let myKitten = new Kitten("Nibbles", true, "white")

Object.create ()

Metoda Object.create () (definită pentru prima dată în ECMAScript 5.1) vă permite să creați obiecte. vă permite să alegeți obiectul prototip pentru noul dvs. obiect fără a fi nevoie să definiți în prealabil o funcție de constructor.

// Our pre-defined object
let kitten = {
  name: "Fluff",
  cute: true,
  color: "gray"
}
// Create a new object using Object.create(). kitten is used as the prototype
let newKitten = Object.create(kitten)

console.log(newKitten.name) // Will output "Fluff"