--- title: JavaScript slug: Web/JavaScript tags: - JavaScript - Landing - Learn - NeedsTranslation - TopicStub - 'l10n:priority' translation_of: Web/JavaScript ---
{{JsSidebar}}

JavaScript (JS) е лека интерпретация или JIT- компилиран програмен език с {{Glossary("First-class Function(Първокласни функции)", "първокласни функции")}}. Въпреки, че е най-добре познат като скриптов език за уеб страници , също така и много работни среди без браузър го използват. Такива като node.js, Apache CouchDB и Adobe Acrobat. JavaScript също е и {{Glossary("Прототипно базиран език за програмиране", "прототипно базиран")}}, използващ мулти-парадигма, динамичен език.  Поддържа обектно ориентирано програмиране , императивни и декларативни (функционално програмиране) стилове. Прочетете повече  за JavaScript.

Този раздел на сайта е посветен на самия език на JavaScript , и не съдържа части/информация,които са специфични за уеб страници или други хост среди.

За информация относно  {{Glossary("API","APIs")}} специфични за УЕБ страниците, моля вижте Web APIs или DOM.

Стандарта за JavaScript се нарича  ECMAScript. От  2012, всички модерни браузъри напълно поддържат ECMAScript 5.1. По-старите браузъри поддържат поне ECMAScript 3. На 17 Юни 2015 г. , ECMA International публикува шестата основна версия на ECMAScript, която и официално се нарича  ECMAScript 2015 и е първоначално наричана ECMAScript 6 или ES6. От тогава, ECMAScript стандартите се появяват на годишна база. Тази документация се отнася до най-новата версия на проекта, която понастоящем е ECMAScript 2018.

Не бъркайте JavaScript със  езика за програмиране Java. И двата езика "Java" и "JavaScript" са търговски марки или регистрирани търговски марки на Oracle в САЩ и други държави. И двата езика за програмиране имат много различен синтакс, семантика и изпозлване.

Уроци

Научете се как да програмирате с JavaScript чрез ръководства и уроци.

За напълно начианещи

Разгледайте темата  Lеearning Area JavaScript topic ако искате да учите JavaScript, но нямате предишен опит в JavaScript или програмирането. Пълните налични модули са както следва:

JavaScript първи стъпки
Отговори на някои основни въпроси като "Какво е JavaScript?", "Как изглежда?" И "какво може да направи?", Заедно с обсъждане на ключови характеристики на JavaScript, като променливи, низове, числа и масиви.
JavaScript изграждащи блокове
Продължава с нашето покритие за ключовите характеристики на Javascript, насочвайки вниманието ни към често срещаните типове блокове код, като условни изрази, цикли, функции и събития.

Javascript ръководство

JavaScript ръководство
Много по-подробно и детйално ръководство за езика JavaScript , насочено повече към хора с опит в програмирането или с друг език за програмиране.

Средно напреднали

Въведение в  JavaScript обектите
Обектно-ориентираният характер на Javascript e важен за разбиране, ако искате да стигнете по-далеч със знанията за езика и да пишете по-ефективен код. Затова сме Ви предоставили този модул , за да Ви помогне по-добре.
Уеб 'APIs' от страна на клиента
Когато пишете клиентски ориентиран JavaScript за уеб сайтове или приложения, няма да стигнете много далеч, преди да започнете да използвате API - интерфейси за манипулиране на различни аспекти на браузъра и операционната система на която сайтът работи, или дори данни от други уеб сайтове или услуги. В този модул ще разгледаме какво представляват API-тата и как да използваме някои от най-често използваните приложни програмни интерфейси(API), с които ще се сблъскате най-често в работата си .
Повторно въвеждане в  JavaScript
Преглед за тези, които мислят, че знаят повече за JavaScript.
Структори от данни в JavaScript
Преглед на наличните структури от данни в JavaScript.
Сравнение на равенството и еднаквостта
JavaScript осигурява три различни операции за сравнение на стойности: стриктно равенство, използвайки ===, свободно сравнение, използвайки ==, и метода {{jsxref("Global_Objects/Object/is", "Object.is()")}} .

Напреднали

Наследяване и прототипна верига
Обяснение на широко неразбраното и подценено прототипно-базирано наследяване.
Строг режим
Строгия режим дефинира/определя, че не можете да използвате която и да е променлива преди да я инициализирате/създадете. Това е ограничен вариант на ECMAScript 5 стандарта, за по-бърза работа и по-лесно остраняване на грешки(дебъгване).
JavaScript типизирани/типове масиви
Типизираните масиви в JavaScript предоставят механизъм за достъп до необработени двоични данни.
Управелние на паметта
Жизненият цикъл на паметта и събирането на "боклука" в Javascript.
Конкурентен модел и цикъл на събитията
JavaScript има конкурентен модел, който е  базиран на "цикъл на сибитията (event loop) ".

Препратка

Разгледайте пълната справочна документация на JavaScript.

Стандартни обекти
Запознайте се със стандартните вградени обекти {{jsxref("Array")}}, {{jsxref("Boolean")}}, {{jsxref("Date")}}, {{jsxref("Error")}}, {{jsxref("Function")}}, {{jsxref("JSON")}}, {{jsxref("Math")}}, {{jsxref("Number")}}, {{jsxref("Object")}}, {{jsxref("RegExp")}}, {{jsxref("String")}}, {{jsxref("Map")}}, {{jsxref("Set")}}, {{jsxref("WeakMap")}}, {{jsxref("WeakSet")}}, and others.
Изрази и оператори
Научете повече за поведението на JavaScript операторите  {{jsxref("Оператори/instanceof", "instanceof")}}, {{jsxref("Оператори/typeof", "typeof")}}, {{jsxref("Оператори/new", "new")}}, {{jsxref("Оператори/this", "this")}}, оператора precedence, и още.
Изавления и декларации
Научете как {{jsxref("Изавления/do...while", "do-while")}}, {{jsxref("Изавления/for...in", "for-in")}}, {{jsxref("Изавления/for...of", "for-of")}}, {{jsxref("Изавления/try...catch", "try-catch")}}, {{jsxref("Изавления/let", "let")}}, {{jsxref("Изавления/var", "var")}}, {{jsxref("Изавления/const", "const")}}, {{jsxref("Изавления/if...else", "if-else")}}, {{jsxref("Изавления/switch", "switch")}}, и още JavaScript изавления и ключови думи за работа.
Функции
Научете се как да работите с JavaScript's функциите за разработване на вашите приложения.

Инструменти & ресурси

Полезни инструменти за писане и отстраняване на грешки във вашият JavaScript код.

Firefox Инструменти за Разработчици
Scratchpad, Web Console, JavaScript Profiler, Debugger, и още.
JavaScript Щитове
JavaScript щита позволява бързото тестване на откъси от JavaScript код.
TogetherJS
Сътрудничеството става лесно. Като добавите TogetherJS към сайта си, вашите потребители могат да си помагат един на друг в уебсайта ви и то в реално време!
Stack Overflow
Stack Overflow въпроси маркирани с "JavaScript".
JavaScript версии и бележки по изданието
Прегледайте последните истории свързани с JavaScript's и състоянието на изпълнение.
JSFiddle
Редактирай JavaScript, CSS, HTML и получете резултати на живо. Използвайте външни ресурси и сътрудничете с екипа си онлайн.
Plunker
Plunker е онлайн общност за създаване, сътрудничество и споделяне на идеи за уеб разработки. Редактирайте вашите JavaScript, CSS, HTML файлове и получете резултати на живо и структура на файла.