Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

Revision 1125529 of JavaScript

  • Посилання редакції: Web/JavaScript
  • Заголовок редакції: JavaScript
  • ID редакції: 1125529
  • Створено:
  • Автор: Sviat
  • Це поточна редакція? Ні
  • Коментар

Зміст редакції

{{JsSidebar}}

JavaScript (JS) - це легка, інтерпретована мова програмування з функціями першого класу. Хоча JavaScript більш відомий як скриптова мова для веб-сторінок, проте його також використовують багато небраузерних середовищ, наприклад node.js та Apache CouchDB. JS є прототип-орієнтованою, динамічою скриптовою мовою з декількома парадигмами із підтримкою об'єктно-орієнтованого, імперативного і декларативного (функціональне програмування) стилів. Прочитай більше про JavaScript.

Ця частина сайту присвячена самій мові JavaScript, і вона не стосується тонкощів, пов'язаних з веб-сторінками або оточенням, в якому виконується JavaScript . Для інформації щодо {{Glossary("API","API")}} специфічних для Веб-сторінок, будь ласка дивіться Web APIs та DOM.

Стандартом для JavaScript є ECMAScript. Станом на 2012 рік, усі сучасні браузери повністю підтримують ECMAScript 5.1. Старі браузери підтримують щонайменше ECMAScript 3. 17 червня 2015 року, ECMA International випустилала шосту основну версію ECMAScript, яку офіційно назвали ECMAScript 2015; частіше зустрічається назва ECMAScript 6 або ES6. Ця документація посилається на останню версію чернетки, що є на даний момент ECMAScript 2017.

Не слід плутати JavaScript із мовою програмування Java. Мови "Java" та "JavaScript" є товарними знаками або зареєстрованими торговими марками Oracle в Сполучених Штатах та інших крїнах. Проте ці дві мови програмування мають дуже різний синтаксис, семантику і використання.

Навчальні посібники

Дізнайтеся, як можна програмувати на JavaScript з керівництвами і навчальними посібниками.

Основи

Посібник з JavaScript
Якщо ви новачок в JavaScript, цей посібник познайомить вас із мовою.
Огляд технологій JavaScript
Введення до браузерного JavaScript.
Введення до Об'єктно-Орієнтованого JavaScript
Введення до Об'єктно-Орієнтованого програмування на JavaScript.

Середній рівень

Повторне введення в JavaScript
Огляд для тих хто думає, що знає JavaScript.
Структури даних JavaScript
Огляд доступних структур даних на JavaScript.
Порівняння рівностей та тотожність
JavaScript надає три різні операції для порівняння значень: строга рівність із використанням ===, нестрога рівність із ==, а також метод {{jsxref("Global_Objects/Object/is", "Object.is()")}}.

Просунутий рівень

Наслідування та ланцюжок прототипів
Пояснення наслідування на основі прототипів, яке часто неправильно розуміють та недооцінюють.
Строгий режим
Строгий режим (strict mode) забороняє використовувати будь-яку змінну, якщо вона не ініціалізована. Цей режим, що забезпечує кращу швидкість та простіше відлагодження, є обмеженим варіантом ECMAScript 5.
Збірні масиви JavaScript
Збірні масиви JavaScript забезпечують механізм доступу до необроблених бінарних даних.
Управління пам'яттю
Життєвий цикл пам'яті та збирання сміття у JavaScript.
Модель мультипотоковості та цикл подій (Event Loop)
Модель мультипотоковості JavaScript заснована на "циклі подій".

Довідка

Перегляньте повну документацію 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")}} та багато інших.
Вирази та оператори
Дізнайся більше про поведінку операторів у JavaScript {{jsxref("Operators/instanceof", "instanceof")}}, {{jsxref("Operators/typeof", "typeof")}}, {{jsxref("Operators/new", "new")}}, {{jsxref("Operators/this", "this")}}, пріоритети операторів та інше.
Вирази та оголошення
Learn how {{jsxref("Statements/do...while", "do-while")}}, {{jsxref("Statements/for...in", "for-in")}}, {{jsxref("Statements/for...of", "for-of")}}, {{jsxref("Statements/try...catch", "try-catch")}}, {{jsxref("Statements/let", "let")}}, {{jsxref("Statements/var", "var")}}, {{jsxref("Statements/const", "const")}}, {{jsxref("Statements/if...else", "if-else")}}, {{jsxref("Statements/switch", "switch")}}, and more JavaScript statements and keywords work.
Функції
Навчись як працювати з функціями у JavaScript для розробки своїх додатків.

Інструменти та ресурси

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

Firefox Developer Tools
Scratchpad, Web Console, JavaScript Profiler, Debugger та більше.
Firebug
Редагуй, налагоджуй, і відстежуй CSS, HTML, та JavaScript наживо на будь-якій веб сторінці.
JavaScript Shells
Командна лінія для JavaScript, що дозволяє вам швидко тестувати уривки JS коду.
TogetherJS

Робить співпрацю легкою.

Stack Overflow
Stack Overflow питання, пов'язані із "JavaScript".
Версії JavaScript та примітки до випуску
Переглянь історію ознак JavaScript і статус реалізації.
JSFiddle
Редагуй JavaScript, CSS, HTML та отримуй миттєві результати. Використовуй зовнішні ресурси та співпрацюй зі своєю командою в мережі.
 

{{CommunityBox("JavaScript", "js-engine.internals", "mozilla.dev.tech.js-engine.internals", "js", "ES discuss|https://esdiscuss.org/|esdiscuss.org|ECMAScript standard discussion mailing list||SpiderMonkey|https://wiki.mozilla.org/JavaScript|Project page|Contribute to the JavaScript Engine||Twitter|https://twitter.com/SpiderMonkeyJS|@SpiderMonkeyJS|SpiderMonkey updates on Twitter")}}

Джерело редакції

<div>{{JsSidebar}}</div>

<p class="summary"><strong>JavaScript</strong> (<strong>JS</strong>) - це легка, інтерпретована мова програмування з <a href="https://en.wikipedia.org/wiki/First-class_functions">функціями першого класу</a>. Хоча JavaScript більш&nbsp;відомий як скриптова мова для веб-сторінок, проте його також використовують&nbsp;<a href="https://en.wikipedia.org/wiki/JavaScript#Uses_outside_Web_pages">багато небраузерних середовищ</a>, наприклад&nbsp;<a href="https://nodejs.org/">node.js</a> та <a href="https://couchdb.apache.org/">Apache CouchDB</a>. JS є&nbsp;<a href="https://uk.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D1%82%D0%BE%D1%82%D0%B8%D0%BF%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%83%D0%B2%D0%B0%D0%BD%D0%BD%D1%8F">прототип-орієнтованою</a>, <a href="https://uk.wikipedia.org/wiki/%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%82%D0%B8%D0%BF%D1%96%D0%B7%D0%B0%D1%86%D1%96%D1%97#.D0.94.D0.B8.D0.BD.D0.B0.D0.BC.D1.96.D1.87.D0.BD.D0.B0_.D1.82.D0.B8.D0.BF.D1.96.D0.B7.D0.B0.D1.86.D1.96.D1.8F">динамічою</a>&nbsp;скриптовою мовою з декількома парадигмами із підтримкою <a href="https://uk.wikipedia.org/wiki/%D0%9E%D0%B1%27%D1%94%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D1%96%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%83%D0%B2%D0%B0%D0%BD%D0%BD%D1%8F">об'єктно-орієнтованого</a>, <a href="https://uk.wikipedia.org/wiki/%D0%86%D0%BC%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%83%D0%B2%D0%B0%D0%BD%D0%BD%D1%8F">імперативного</a> і <a href="https://uk.wikipedia.org/wiki/%D0%94%D0%B5%D0%BA%D0%BB%D0%B0%D1%80%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%83%D0%B2%D0%B0%D0%BD%D0%BD%D1%8F">декларативного</a> (<a href="https://uk.wikipedia.org/wiki/%D0%A4%D1%83%D0%BD%D0%BA%D1%86%D1%96%D0%B9%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%83%D0%B2%D0%B0%D0%BD%D0%BD%D1%8F">функціональне&nbsp;програмування</a>) стилів. Прочитай більше <a href="https://uk.wikipedia.org/wiki/JavaScript">про JavaScript</a>.</p>

<p><span id="result_box" lang="uk"><span>Ця</span> <span>частина</span> <span>сайту</span> <span>присвячена</span> <span class="alt-edited">самій мові</span> <span>JavaScript</span><span>,</span> <span>і</span> <span>вона не</span> <span class="alt-edited">стосується</span> <span>тонкощів</span><span>,</span> <span>пов'язаних</span> <span>з</span> <span>веб</span><span>-</span><span>сторінками</span> <span>або</span> <span>оточенням</span><span>,</span> <span>в</span> <span>якому</span> <span class="alt-edited">виконується</span> <span>JavaScript</span></span> . Для інформації щодо {{Glossary("API","API")}} специфічних для&nbsp;<span class="short_text" id="result_box" lang="uk"><span>Веб</span><span>-</span><span>сторінок</span></span>, будь ласка дивіться <a href="/en-US/docs/Web/API">Web APIs</a> та <a href="/en-US/docs/Glossary/DOM">DOM</a>.</p>

<p>Стандартом для JavaScript є <a href="/en-US/docs/Web/JavaScript/Language_Resources">ECMAScript</a>. <span class="short_text" id="result_box" lang="uk"><span>Станом</span> <span>на 2012 рік</span></span>, усі <a href="https://kangax.github.io/compat-table/es5/">сучасні браузери</a> повністю підтримують ECMAScript 5.1. Старі браузери підтримують щонайменше ECMAScript 3. 17 <span class="short_text" lang="uk"><span>червня</span></span>&nbsp;2015 року, <a href="https://www.ecma-international.org">ECMA International </a>випустилала шосту основну версію ECMAScript, яку офіційно назвали ECMAScript 2015; <span class="short_text" id="result_box" lang="uk"><span>частіше</span> <span>зустрічається назва</span></span> ECMAScript 6 або ES6. Ця документація посилається на останню версію чернетки, що є на даний момент <a href="https://tc39.github.io/ecma262/">ECMAScript 2017</a>.</p>

<p><span class="short_text" id="result_box" lang="uk"><span>Не слід</span> <span>плутати</span></span> JavaScript із <a href="https://en.wikipedia.org/wiki/Java_(programming_language)">мовою програмування Java</a>. Мови "Java" та "JavaScript" є товарними знаками або <span class="short_text" id="result_box" lang="uk"><span>зареєстрованими</span> <span>торговими</span> <span>марками</span></span> Oracle в <span class="short_text" id="result_box" lang="uk"><span>Сполучених Штатах</span></span> та інших крїнах. <span id="result_box" lang="uk"><span>Проте</span> <span>ці</span> <span>дві мови</span> <span>програмування</span> <span>мають</span> <span>дуже</span> <span>різний</span> <span>синтаксис</span><span>,</span> <span>семантику</span> <span>і</span> <span>використання</span><span>.</span></span></p>

<div class="column-container">
<div class="column-half">
<h2 id="Навчальні_посібники">Навчальні посібники</h2>

<p>Дізнайтеся,&nbsp;як&nbsp;можна&nbsp;програмувати на&nbsp;JavaScript&nbsp;з&nbsp;керівництвами і навчальними&nbsp;посібниками.</p>

<h3 id="Основи">Основи</h3>

<dl>
 <dt><a href="https://developer.mozilla.org/uk/docs/Web/JavaScript/Guide">Посібник з JavaScript</a></dt>
 <dd>Якщо ви новачок в JavaScript, цей посібник познайомить вас із мовою.</dd>
 <dt><a href="/en-US/docs/Web/JavaScript/JavaScript_technologies_overview">Огляд технологій JavaScript</a></dt>
 <dd>Введення до браузерного JavaScript.</dd>
 <dt><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Introduction_to_Object-Oriented_JavaScript">Введення до Об'єктно-Орієнтованого JavaScript</a></dt>
 <dd>Введення до Об'єктно-Орієнтованого програмування на JavaScript.</dd>
</dl>

<h3 id="Середній_рівень">Середній рівень</h3>

<dl>
 <dt><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript">Повторне введення в JavaScript</a></dt>
 <dd>Огляд для тих хто <em>думає</em>, що знає JavaScript.</dd>
</dl>

<dl>
 <dt><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures">Структури даних JavaScript</a></dt>
 <dd>Огляд доступних структур даних на JavaScript.</dd>
 <dt><a href="/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness">Порівняння рівностей та тотожність</a></dt>
 <dd>JavaScript надає три різні операції для порівняння значень: строга рівність <code>із використанням ===</code>, <code>нестрога рівність із ==</code>, а також метод {{jsxref("Global_Objects/Object/is", "Object.is()")}}.</dd>
</dl>

<h3 id="Просунутий_рівень">Просунутий рівень</h3>

<dl>
 <dt><a href="/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_chain">Наслідування та ланцюжок прототипів</a></dt>
 <dd>Пояснення наслідування на основі прототипів, яке часто неправильно розуміють та недооцінюють.</dd>
 <dt><a href="/uk/docs/Web/JavaScript/Reference/Strict_mode">Строгий режим</a></dt>
 <dd>Строгий режим (strict mode) забороняє використовувати будь-яку змінну, якщо вона не ініціалізована. Цей режим, що забезпечує кращу швидкість та простіше відлагодження, є обмеженим варіантом ECMAScript&nbsp;5.</dd>
 <dt><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays">Збірні масиви JavaScript</a></dt>
 <dd>Збірні масиви JavaScript забезпечують механізм доступу до необроблених бінарних даних.</dd>
 <dt><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management">Управління пам'яттю</a></dt>
 <dd>Життєвий цикл пам'яті та збирання сміття у JavaScript.</dd>
 <dt><a href="/en-US/docs/Web/JavaScript/EventLoop">Модель мультипотоковості та цикл подій (Event Loop)</a></dt>
 <dd>Модель мультипотоковості JavaScript заснована на "циклі подій".</dd>
</dl>
</div>

<div class="column-half">
<h2 id="Reference">Довідка</h2>

<p>Перегляньте повну документацію <a href="/en-US/docs/Web/JavaScript/Reference">JavaScript</a>.</p>

<dl>
 <dt><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects">Стандартні об'єкти</a></dt>
 <dd>Дізнайся про стандартні вбудовані об'єкти {{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")}} та багато інших.</dd>
 <dt><a href="/en-US/docs/Web/JavaScript/Reference/Operators">Вирази та оператори</a></dt>
 <dd>Дізнайся більше про поведінку операторів у JavaScript {{jsxref("Operators/instanceof", "instanceof")}}, {{jsxref("Operators/typeof", "typeof")}}, {{jsxref("Operators/new", "new")}}, {{jsxref("Operators/this", "this")}}, <a href="/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence">пріоритети операторів</a> та інше.</dd>
 <dt><a href="/en-US/docs/Web/JavaScript/Reference/Statements">Вирази та оголошення</a></dt>
 <dd>Learn how {{jsxref("Statements/do...while", "do-while")}}, {{jsxref("Statements/for...in", "for-in")}}, {{jsxref("Statements/for...of", "for-of")}}, {{jsxref("Statements/try...catch", "try-catch")}}, {{jsxref("Statements/let", "let")}}, {{jsxref("Statements/var", "var")}}, {{jsxref("Statements/const", "const")}}, {{jsxref("Statements/if...else", "if-else")}}, {{jsxref("Statements/switch", "switch")}}, and more JavaScript statements and keywords work.</dd>
 <dt><a href="/en-US/docs/Web/JavaScript/Reference/Functions">Функції</a></dt>
 <dd>Навчись як працювати з функціями у JavaScript для <span class="short_text" id="result_box" lang="uk"><span>розробки</span> своїх <span>додатків</span></span>.</dd>
</dl>

<h2 id="Інструменти_та_ресурси">Інструменти та ресурси</h2>

<p>Корисні інструменти для написання та зневадження вашого <strong>JavaScript </strong>коду.</p>

<dl>
 <dt><a href="/en-US/docs/Tools">Firefox Developer Tools</a></dt>
 <dd><a href="/en-US/docs/Tools/Scratchpad">Scratchpad</a>, <a href="/en-US/docs/Tools/Web_Console">Web Console</a>, <a href="/en-US/docs/Tools/Profiler">JavaScript Profiler</a>, <a href="/en-US/docs/Tools/Debugger">Debugger</a> та більше.</dd>
 <dt><a class="external" href="https://www.getfirebug.com/">Firebug</a></dt>
 <dd>Редагуй, налагоджуй, і відстежуй CSS, HTML, та JavaScript наживо на будь-якій веб сторінці.</dd>
 <dt><a href="/en-US/docs/Web/JavaScript/Shells">JavaScript Shells</a></dt>
 <dd>Командна лінія для&nbsp;JavaScript, що дозволяє вам швидко тестувати уривки JS&nbsp;коду.</dd>
 <dt><a href="https://togetherjs.com/">TogetherJS</a></dt>
 <dd>
 <p>Робить співпрацю легкою.</p>
 </dd>
 <dt><a href="https://stackoverflow.com/questions/tagged/javascript">Stack Overflow</a></dt>
 <dd>Stack Overflow питання, пов'язані із "JavaScript".</dd>
 <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript">Версії JavaScript та примітки до випуску</a></dt>
 <dd>Переглянь історію ознак JavaScript&nbsp;і статус реалізації.</dd>
 <dt><a href="https://jsfiddle.net/">JSFiddle</a></dt>
 <dd>Редагуй JavaScript, CSS, HTML та отримуй миттєві результати. Використовуй зовнішні ресурси та співпрацюй зі своєю командою в мережі.</dd>
 <dd>&nbsp;</dd>
</dl>
</div>
</div>

<p>{{CommunityBox("JavaScript", "js-engine.internals", "mozilla.dev.tech.js-engine.internals", "js", "ES discuss|https://esdiscuss.org/|esdiscuss.org|ECMAScript standard discussion mailing list||SpiderMonkey|https://wiki.mozilla.org/JavaScript|Project page|Contribute to the JavaScript Engine||Twitter|https://twitter.com/SpiderMonkeyJS|@SpiderMonkeyJS|SpiderMonkey updates on Twitter")}}</p>
Повернути цю редакцію