# data[].attributes.body
для работы с мобильными приложениями

# data[].attributes.attachment_link.readable_text
Заметка

Эта документация в основном содержит информацию об API и технологии в разработке. Эта информация может быть изменена и программы, написаные согласно данному руководству должны быть протестированы на корректную работу с последней версией операционной системы.

Swift - это фантастический способ писать приложения для телефонов, для десктопных компьютеров, серверов, да и чего-либо еще, что запускает и работает при помощи кода. Swift безопасный, быстрый и интерактивный язык программирования. Swift вобрал в себя лучшие идеи современных языков с мудростью инженерной культуры Apple. Компилятор оптимизирован для производительности, а язык оптимизирован для разработки, без компромиссов с одной или другой стороны.

Swift дружелюбен для новичков в программировании. Это первый язык программирования промышленного качества, который так же понятен и увлекателен, как скриптовый язык. Написание кода в песочнице позволяет экспериментировать с кодом Swift и видеть результат мгновенно, без необходимости компилировать и запускать приложение.

Swift исключает большой пласт распространенных программных ошибок при помощи применения современных программных паттернов:

Переменные всегда инициализированы до того, как будут использованы.

Индексы массивов всегда проверяются на out-of-bounds ошибки.

Целые числа проверяются на переполнение.

Опционалы гарантируют, что значения nil будут явно обработаны.

Автоматическое управление памятью

Обработка ошибок позволяет осуществлять контролируемое восстановление от непредвиденных ошибок.

Код на Swift скомпилирован и оптимизирован, чтобы получать максимальную отдачу от современного оборудования. Синтаксис стандартной библиотеки спроектирован основываясь на руководстве, что самый очевидный и простой способ написания кода является лучшим вариантом. Комбинация безопасности и скорости делает Swift лучшим кандидатом для написания программ от уровня "Hello, World!" и до целой операционной системы.

Swift совмещает вывод типов и паттерн-матчинг с современным простым синтаксисом, позволяя сложным идеям быть выраженным просто и кратко. И в качестве результата не только становится проще писать код, но и читать его и поддерживать так же становится просто.

Swift уже имеет за плечами годы развития, и он продолжает развиваться, включая в себя все новые и новые возможности. Наши цели на Swift очень амбициозные. Мы не можем дождаться, что же у вас получится создать при помощи него.

# data[].attributes.attachment_link.description
Заметка Эта документация в основном содержит информацию об API и технологии в разработке. Эта информация может быть изменена и программы, написаные согласно данному руководству должны быть протестированы на корректную работу с последней версией операционной системы. Swift - это фантастический способ писать приложения для телефонов, для десктопных компьютеров, серверов, да и чего-либо еще, что запускает и ...

# data[].attributes.body
чтобы понять, как все устроено в программировании

# data[].attributes.attachment_link.readable_text
Си++ (англ. C++) - компилируемый строго типизированный язык программирования общего назначения. Поддерживает разные парадигмы программирования: процедурную, обобщённую, функциональную; наибольшее внимание уделено поддержке объектно-ориентированного программирования.

Разработка языка началась в 1979 году. Целью создания C++ было дополнение C возможностями, удобными для масштабной разработки ПО, с сохранением гибкости, скорости и портабельности C. Вместе с тем создатели C++ стремились сохранить совместимость с C: синтаксис первого основан на синтаксисе последнего, и большинство программ на C будут работать и как C++. Изначально новый язык назывался "C с классами", но затем имя было изменено на C++ - это должно было подчеркнуть как его происходжение от C, так и его превосходство над последним.

Первый выпуск C++ для коммерческого использования состоялся в 1985 году, вместе с публикацией книги "The C++ Programming Language", которая на долгое время стала его неофициальным стандартом. В 1989 году вышла вторая версия языка в сопровождении книги "The Annotated C++ Reference Manual".

В 1990-х годах язык стал одним из наиболее широко используемых языков программирования общего назначения. Первым официальным стандартом языка стал ISO/IEC 14882:1998, более известный как C++98. В 2003 году была принята его дополненная версия, C++03, а в 2005 году был опубликован "Library Technical Report 1" (сокращенно TR1) - документ, описывающий расширения стандартной библиотеки. TR1 не является стандартом, но большинство актуальных компиляторов C++ поддерживает его. Наконец, в 2011 году был принят текущий стандарт, C++11.

Нововведениями C++ в сравнении с C являются:

поддержка объектно-ориентированного программирования через классы. C++ предоставляет все четыре возможности ООП - абстракцию, инкапсуляцию, наследование (в том числе и множественное) и полиморфизм.

поддержка обобщённого программирования через шаблоны функций и классов;

стандартная библиотека C++ состоит из стандартной библиотеки C (с некоторыми модификациями) и библиотеки шаблонов (Standard Template Library, STL), которая предоставляет обширный набор обобщенных контейнеров и алгоритмов;

дополнительные типы данных;

обработка исключений;

виртуальные функции;

пространства имён;

встраиваемые (inline) функции;

перегрузка (overloading) операторов;

перегрузка имён функций;

ссылки и операторы управления свободно распределяемой памятью.

Элементы синтаксиса:

Комментарий до конца строки

//

Комментарии, которые не могут быть вложенными

/* ... */

Регистрозависимость

да

Регулярное выражение идентификатора переменной

[_a-zA-Z][_a-zA-Z0-9]*

Регулярное выражение идентификатора функции

[_a-zA-Z][_a-zA-Z0-9]*

Присваивание значения переменной

varname = value

Объявление переменной

type varname

Объявление переменной с присваиванием значения

type varname = value

Группировка выражений

( ... )

Тождественное равенство

*a == *b (a и b - указатели)

Тождественное неравенство

*a != *b (a и b - указатели)

Определение функции

returntype functionName (argtype1 argname1, ..., argtypeN argnameN)

Вызов функции

functionName(arg1, ..., argN)

Вызов функции без параметров

functionName()

Если - то

if (condition) trueBlock

Если - то - иначе

if (condition) trueBlock else falseBlock

Бесконечный цикл

while (true) loopBody

Цикл с предусловием

while (condition) loopBody

Цикл с постусловием

do loopBody while (!condition)

Цикл for - next для диапазона целых чисел с инкрементом на 1

for (int i = first; i <= last ; i++)

Цикл for - next для диапазона целых чисел с декрементом на 1

for (int i = last; i >= first; i--)

Примеры:

Факториал:

Пример для версий Borland C++ Builder 6, g++ 4.x

Используется рекурсивное определение факториала.

Hello, World!:

Пример для версий Borland C++ Builder 6, Microsoft Visual C++ 6, Microsoft Visual C++ 9 (2008), g++ 3.4.5, g++ 4.x

Числа Фибоначчи:

Пример для версий Borland C++ Builder 6, Microsoft Visual C++ 6, Microsoft Visual C++ 9 (2008), g++ 3.4.5

Факториал:

Пример для версий Borland C++ Builder 6, Microsoft Visual C++ 6, Microsoft Visual C++ 9 (2008), g++ 3.4.5

Используется рекурсивное определение факториала. Реализация отличается от альтернативной использованием типа __int64 вместо unsigned long long и функции вывода на печать printf вместо std::cout <<.

Квадратное уравнение:

Пример для версий Borland C++ Builder 6, Microsoft Visual C++ 9 (2008), g++ 3.4.5

В этом примере используется класс complex<>, входящий в состав библиотеки STL. Все вычисления выполняются в комплексных числах, т.к. это позволяет не беспокоиться о знаке дискриминанта и различных представлениях корней для действительного и комплексного случаев.

Оператор >> класса complex<> перегружен так, что он распознает несколько форматов вводимых чисел, в т.ч. и числа без мнимой части, так что константы A, B и C читаются не как целые числа, а сразу как комплексные. Такая реализация позволяет расширить область применения примера до уравнений с дробными и даже комплексными коэффициентами.

Оператор << класса complex<> также перегружен и выводит любое комплексное число x как (x.real(),x.imag()), поэтому для вывода корней без мнимой части как обычных дробных чисел используется функция print.

Hello, World!:

Пример для версий Borland C++ Builder 6, TCC 0.9.25, g++ 3.4.5, gcc 3.4.5, gcc 3.4.5 (Objective-C)

Квадратное уравнение:

Пример для версий Borland C++ Builder 6, Microsoft Visual C++ 9 (2008), TCC 0.9.25, g++ 3.4.5, gcc 3.4.5, gcc 3.4.5 (Objective-C)

Этот пример работает на C и C++, а также на Objective-C, являющемся строгим надмножеством языка C. В случае C может понадобиться компилировать программу с опцией -lm, чтобы подключить библиотеку математики.

CamelCase:

Пример для версий Borland C++ Builder 6, Microsoft Visual C++ 9 (2008), g++ 4.x

Эта программа обрабатывает введенную строку посимвольно. Функция getline считывает из потока ввода, заданного первым аргументом, строку (не до пробела, а до конца строки) и записывает ее во второй аргумент. Стандартная функция tolower работает только с одиночными символами, поэтому для преобразования в нижний регистр строки целиком используется функция transform, которая применяет заданную функцию ко всем элементам вектора (а в STL строка - это вектор символов). Затем для каждого символа строки проверяется, является ли он символом алфавита (функция isalpha), и в зависимости от результата он либо дописывается в конец результирующей строки (в верхнем регистре, если перед ним был не-алфавитный символ), либо устанавливает признак "последний символ был пробелом". Функция isalpha работает с символами любого регистра, поэтому перевод в нижний регистр можно было делать не отдельным действием над всей строкой, а при присоединении каждого отдельного символа.

Числа Фибоначчи:

Используется итеративное вычисление чисел Фибоначчи; вычисленные значения сохраняются в массиве.

# data[].attributes.attachment_link.keywords[]
программирование

# data[].attributes.attachment_link.description
Си++ (англ. C++) - компилируемый строго типизированный язык программирования общего назначения. Поддерживает разные парадигмы программирования: процедурную, обобщённую, функциональную; наибольшее внимание уделено поддержке объектно-ориентированного программирования. Разработка языка началась в 1979 году. Целью создания C++ было дополнение C возможностями, удобными для масштабной разработки ПО, с сохранением гибкости, скорости и портабельности C.

# data[].attributes.body
"основа основ"

# data[].attributes.attachment_link.readable_text
Java - объектно-ориентированный язык программирования, разрабатываемый компанией Sun Microsystems с 1991 года и официально выпущенный 23 мая 1995 года. Изначально новый язык программирования назывался Oak (James Gosling) и разрабатывался для бытовой электроники, но впоследствии был переименован в Java и стал использоваться для написания апплетов, приложений и серверного программного обеспечения.

Программы на Java могут быть транслированы в байт-код, выполняемый на виртуальной java-машине (JVM) - программе, обрабатывающей байт-код и передающей инструкции оборудованию, как интерпретатор, но с тем отличием, что байт-код, в отличие от текста, обрабатывается значительно быстрее.

Язык Java зародился как часть проекта создания передового программного обеспечения для различных бытовых приборов. Реализация проекта была начата на языке C++, но вскоре возник ряд проблем, наилучшим средством борьбы с которыми было изменение самого инструмента - языка программирования. Стало очевидным, что необходим платформо-независимый язык программирования, позволяющий создавать программы, которые не приходилось бы компилировать отдельно для каждой архитектуры и можно было бы использовать на различных процессорах под различными операционными системами.

Язык Java потребовался для создания интерактивных продуктов для сети Internet. Фактически, большинство архитектурных решений, принятых при создании Java, было продиктовано желанием предоставить синтаксис, сходный с C и C++. В Java используются практически идентичные соглашения для объявления переменных, передачи параметров, операторов и для управления потоком выполнением кода. В Java добавлены все хорошие черты C++.

Три ключевых элемента объединились в технологии языка Java

Java предоставляет для широкого использования свои апплеты (applets) - небольшие, надежные, динамичные, не зависящие от платформы активные сетевые приложения, встраиваемые в страницы Web. Апплеты Java могут настраиваться и распространяться потребителям с такой же легкостью, как любые документы HTML

Java высвобождает мощь объектно-ориентированной разработки приложений, сочетая простой и знакомый синтаксис с надежной и удобной в работе средой разработки. Это позволяет широкому кругу программистов быстро создавать новые программы и новые апплеты

Java предоставляет программисту богатый набор классов объектов для ясного абстрагирования многих системных функций, используемых при работе с окнами, сетью и для ввода-вывода. Ключевая черта этих классов заключается в том, что они обеспечивают создание независимых от используемой платформы абстракций для широкого спектра системных интерфейсов

Примеры:

Hello, World!:

Для Java приведенный код должен находиться в файле HelloWorld.java.

Факториал:

Используется рекурсивное определение факториала. Для хранения больших чисел использован элементарный тип данных long, позволяющий хранить числа от -2 ⁶³ до 2 ⁶³-1.

Числа Фибоначчи:

Используется рекурсивное определение чисел Фибоначчи.

Факториал:

Используется итеративное вычисление факториала. Для хранения больших чисел используется встроенный класс BigInteger, позволяющий обрабатывать сколь угодно большие числа ценой увеличения времени обработки.

Квадратное уравнение:

В Java нет типа данных для работы с комплексными числами, поэтому вычисления производятся в дробных числах и выполняется отдельная проверка на знак дискриминанта. Реализация позволяет решать квадратные уравнения не только с целыми, но и с дробными коэффициентами.

Коэффициенты читаются из потока System.in. Напрямую из него можно читать только отдельные байты, поэтому для повышения комфортности чтения используются классы InputStreamReader и BufferedReader. Строки, прочитанные из System.in, преобразуются в числа типа double с помощью метода Double.parseDouble(). Все операции ввода в Java должны находиться внутри блоков try ... catch, чтобы гарантированно обрабатывать IOException - класс исключений, порождаемых функциями чтения.

CamelCase:

Пример для версий Groovy 1.7, Sun Java 6

В этом примере используются регулярные выражения Java. Регулярное выражение [a-zA-Z]+ описывает последовательность букв латинского алфавита в любом регистре, идущих подряд, окруженную другими символами или концами строки. Пара классов Pattern и Matcher позволяют создать это регулярное выражение и извлечь из строки все фрагменты, соответствующие ему. Для каждого такого фрагмента его первый символ переводится в верхний регистр, а последующие - в нижний, с использованием стандартных методов класса String. Наконец, результаты обработки фрагмента записываются в переменную типа StringBuffer, накапливающую результат.

# data[].attributes.attachment_link.keywords[]
программирование

# data[].attributes.attachment_link.description
Java - объектно-ориентированный язык программирования, разрабатываемый компанией Sun Microsystems с 1991 года и официально выпущенный 23 мая 1995 года. Изначально новый язык программирования назывался Oak (James Gosling) и разрабатывался для бытовой электроники, но впоследствии был переименован в Java и стал использоваться для написания апплетов, приложений и серверного программного обеспечения.

# data[].attributes.body
его любят за быстроту и относительно невысокий порог входа

# data[].attributes.attachment_link.readable_text
Что такое PHP?

PHP (рекурсивный акроним словосочетания PHP: Hypertext Preprocessor) - это распространенный язык программирования общего назначения с открытым исходным кодом. PHP специально сконструирован для веб-разработок и его код может внедряться непосредственно в HTML.

Простой ответ, но что он может означать? Вот пример кода:

Вместо рутинного вывода HTML-кода командами языка (как это происходит, например, в Perl или C), скрипт PHP содержит HTML с встроенным кодом (в нашем случае, это вывод текста "Привет, я - скрипт PHP!"). Код PHP отделяется специальными начальным и конечным тегами <?php и ?>, которые позволяют "переключаться" в "PHP-режим" и выходить из него.

PHP отличается от JavaScript тем, что PHP-скрипты выполняются на сервере и генерируют HTML, который посылается клиенту. Если бы у вас на сервере был размещен скрипт, подобный вышеприведенному, клиент получил бы только результат его выполнения, но не смог бы выяснить, какой именно код его произвел. Вы даже можете настроить свой сервер таким образом, чтобы обычные HTML-файлы обрабатывались процессором PHP, так что клиенты даже не смогут узнать, получают ли они обычный HTML-файл или результат выполнения скрипта.

PHP крайне прост для освоения, но вместе с тем способен удовлетворить запросы профессиональных программистов. Не пугайтесь длинного списка возможностей PHP. Вы можете быстро начать, и уже в течение нескольких часов сможете создавать простые PHP-скрипты.

Хотя PHP, главным образом, предназначен для работы в среде веб-серверов, область его применения не ограничивается только этим. Читайте дальше и не пропустите главу Возможности PHP либо, начните непосредственно с Вводного руководства, если вас интересует исключительно веб-программирование.

# data[].attributes.attachment_link.description
PHP (рекурсивный акроним словосочетания PHP: Hypertext Preprocessor) - это распространенный язык программирования общего назначения с открытым исходным кодом. PHP специально сконструирован для веб-разработок и его код может внедряться непосредственно в HTML. Простой ответ, но что он может означать?

# data[].attributes.body
универсальный язык, с помощью которого можно не только делать backend приложений, но и обрабатывать данные, проектировать нейросети

# data[].attributes.attachment_link.provider_name
Фонд Викимедиа

# data[].attributes.attachment_link.title
Python — Википедия

# data[].attributes.attachment_link.description
Python (МФА: [ˈpʌɪθ(ə)n]; в русском языке встречаются названия пито́н[17] или па́йтон[18]) — высокоуровневый язык программирования общего назначения с динамической строгой типизацией и автоматическим управлением памятью[19][20], ориентированный на повышение производительности разработчика, читаемости кода и его качества, а также на обеспечение переносимости написанных на нём программ[21]. Язык является полностью объектно-ориентированным в том плане, что всё является объектами[19]. Необычной особенностью языка является выделение блоков кода отступами[22]. Синтаксис ядра языка минималистичен, за счёт чего на практике редко возникает необходимость обращаться к документации[21]. Сам же язык известен как интерпретируемый и используется в том числе для написания скриптов[19]. Недостатками языка являются зачастую более низкая скорость работы и более высокое потребление памяти написанных на нём программ по сравнению с аналогичным кодом, написанным на компилируемых языках, таких как C или C++[19][21].

# data[].attributes.body
необходим для создания реляционных баз данных

# data[].attributes.attachment_link.title
Основные команды SQL, которые должен знать каждый программист

# data[].attributes.attachment_link.description
Язык SQL или Structured Query Language (язык структурированных запросов) предназначен для управления данными в системе реляционных баз данных (RDBMS). ВВспомним часто используемые команды SQL, с которыми должен быть знаком каждый программист, и подгтовимся к собеседованию на работу с этой статьей.

# data[].attributes.body
занимает первое место в создании интерактивной frontend-части сайтов

# data[].attributes.attachment_link.provider_name
Веб-документация MDN

# data[].attributes.attachment_link.readable_text
JavaScript - это язык программирования, который добавляет интерактивность на ваш веб-сайт (например: игры, отклик при нажатии кнопок или при вводе данных в формы, динамические стили, анимация). Эта статья поможет вам начать работать с этим захватывающим языком и даст вам представление о том, на что он способен.

Что такое JavaScript на самом деле?

JavaScript ("JS" для краткости) - это полноценный динамический язык программирования, который применяется к HTML документу, и может обеспечить динамическую интерактивность на веб-сайтах. Его разработал Brendan Eich, сооснователь проекта Mozilla, Mozilla Foundation и Mozilla Corporation.

JavaScript невероятно универсален и дружелюбен к новичкам. Обладая большим опытом, вы сможете создавать игры, анимированную 2D и 3D графику, полномасштабные приложения с базами данных и многое другое!

JavaScript сам по себе довольно компактный, но очень гибкий. Разработчиками написано большое количество инструментов поверх основного языка JavaScript, которые разблокируют огромное количество дополнительных функций с очень небольшим усилием. К ним относятся:

Программные интерфейсы приложения (API), встроенные в браузеры, обеспечивающие различные функциональные возможности, такие как динамическое создание HTML и установку CSS стилей, захват и манипуляция видеопотоком, работа с веб-камерой пользователя или генерация 3D графики и аудио сэмплов.

Сторонние API позволяют разработчикам внедрять функциональность в свои сайты от других разработчиков, таких как Twitter или Facebook.

Также вы можете применить к вашему HTML сторонние фреймворки и библиотеки, что позволит вам ускорить создание сайтов и приложений.

Поскольку эта статья должна быть только лёгким введением в JavaScript, мы не собираемся путать вас на этом этапе, подробно рассказывая о том, какая разница между основным языком JavaScript и различными инструментами, перечисленными выше. Вы можете подробно изучить все это позже, в нашей учебной области JavaScript и в остальной части MDN.

Ниже мы познакомим вас с некоторыми аспектами основного языка, и вы также будете играть с несколькими функциями API браузера. Веселитесь!

Пример "hello world"

Предыдущий раздел звучит очень многообещающе, и это на самом деле так - JavaScript является одной из самых перспективных веб-технологий, и когда вы освоитесь и начнёте использовать его, ваши веб-сайты перейдут в новое измерение мощи и креативности.

Тем не менее, с JavaScript немного более сложно освоиться, чем с HTML и CSS. Вам придется начать с малого, продолжая изучение небольшими шагами. Для начала мы покажем вам, как добавить некоторые основы JavaScript на вашу страницу, чтобы создать "hello world!" пример ( стандарт в начальных примерах программирования).

1. Для начала перейдите на ваш тестовый сайт и создайте папку с именем 'scripts' (без кавычек). Затем, в новой папке скриптов, которую вы только что создали, создайте новый файл с именем main.js. Сохраните его в вашей папке scripts.

2. Далее перейдите в ваш index.html файл и введите следующий элемент на новой строке прямо перед закрывающим тегом </body>:
<script src="scripts/main.js"></script>

3. В основном этот код выполняет ту же работу, что и элемент <link> для CSS - добавляет JavaScript на страницу, позволяя ему взаимодействовать с HTML (и CSS, и чем-нибудь ещё на странице).

4. Теперь добавьте следующий код в файл main.js:
var myHeading = document.querySelector('h1');
myHeading.textContent = 'Hello world!';

5. Теперь убедитесь, что HTML и JavaScript файлы сохранены, и загрузите index.html в браузере. Вы должны увидеть что-то вроде этого:

Примечание: Причиной, по которой мы поставили элемент в нижней части HTML файла, является то, что HTML-элементы загружаются браузером в том порядке, в котором они расположены в файле. Поэтому, если JavaScript загружается первым и ему нужно взаимодействовать с HTML ниже его, он не сможет работать, так как JavaScript будет загружен раньше, чем HTML, с которым нужно работать. Поэтому, располагать JavaScript в нижней части HTML страницы считается лучшей стратегией.

Что произошло?

Итак, ваш заголовок текста был изменен на "Hello world!" с помощью JavaScript. Мы сделали это с помощью вызова функции querySelector(), захватив ссылку на наш заголовок и сохранив её в переменной, названной myHeading. Это очень похоже на то, что мы делали в CSS с помощью селекторов. Если вы хотите что-то сделать с элементом, то для начала вам нужно его выбрать.

После этого, вы устанавливаете значение переменной myHeading в textContent свойство (которое представляет собой контент заголовка) "Hello world!".

Ускоренный курс по основам языка

Давайте познакомимся с некоторыми основными возможностями языка JavaScript, чтобы дать вам больше понимания, как это всё работает. Более того, эти возможности являются общими для всех языков программирования. Если вы сможете понять эти основы, вы будете в состоянии начать программировать, как ни в чём не бывало!

Переменные

Переменные - это контейнеры, внутри которых вы можете хранить значения. Вы начинаете с того, что объявляете переменную с помощью ключевого слова (менее рекомендуется, продолжайте читать, чтобы получить объяснения) или , за которым следует любое имя, которым вы захотите её назвать:

let myVariable;

Примечание: Точка с запятой в конце строки указывает, где заканчивается оператор; это абсолютно необходимо, когда вам нужно разделить оператора на одной строке. Однако некоторые люди считают, что хорошая практика - указывать их в конце каждого оператора. Существуют и другие правила, когда вы должны и не должны их использовать - смотрите более подробно в статье ваше руководство по точкам с запятой в JavaScript.

Примечание: JavaScript чувствителен к регистру - myVariable отличается от переменной myvariable. Если у вас возникают проблемы в вашем коде, проверьте регистр!

Примечание: Для получения более подробной информации о разнице между var и let, смотрите: Разница между var и let.

После объявления переменной вы можете присвоить ей значение:

myVariable = 'Bob';

Вы можете сделать обе эти операции на одной и той же строке, если вы захотите:

var myVariable = 'Bob';

Вы можете получить значение, просто вызвав переменную по имени:

myVariable;

После установки значения переменной вы можете изменить его позже:

var myVariable = 'Bob';
myVariable = 'Steve';

Обратите внимание, что переменные имеют разные типы данных:

Последовательность текста, называемая строкой. Чтобы указать, что это значение является строкой, вы должны заключить его в кавычки.
var myVariable = 'Bob';

Числа. Числа не имеют кавычек вокруг них.
var myVariable = 10;

Значение True(Правда)/False(Ложь). Слова true и false специальные ключевые слова в JS, и не нуждаются в кавычках.
var myVariable = true;

Массив, который позволяет хранить несколько значений в одной ссылке.

var myVariable = [1,'Bob','Steve',10];
Обратиться к каждому элементу массива можно так:
myVariable[0], myVariable[1], и т.д.

В принципе, что угодно. Все в JavaScript является объектом, и может храниться в переменной. Имейте это в виду, пока вы учитесь.

var myVariable = document.querySelector('h1');
Все это из вышеприведённых примеров.

Так для чего нам нужны переменные? Что ж, переменные должны были сделать что-нибудь интересное в программировании. Если значения не могли бы изменяться, то вы не могли бы ничего сделать динамическим, например, персонализировать приветственное сообщение или сменить изображение, отображаемое в галерее изображений.

Комментарии

Комментарии - это, по сути, короткие фрагменты текста, которые могут быть добавлены в код, и которые игнорируются браузером. Вы можете поместить комментарии в JavaScript код, так же как вы делали это в CSS:

/*
Всё, что находится тут - комментарий.
*/

Если ваш комментарий не содержит переноса строк, то зачастую легче поставить две косые черты, как тут:

// Это комментарий

Операторы

operator - это математический символ, который производит результат, основанный на двух значениях (или переменных). В приведенной ниже таблице вы можете увидеть некоторые из наиболее простых операторов, наряду с некоторыми примерами, которые опробуете в JavaScript консоли.

Сложение (Конкатенация)

Используется для сложения двух чисел или склеивания двух строк вместе.

Присваивание

Вы уже это видели: он присваивает значение переменной.
var myVariable = 'Bob';

Равенство (Тождество)

Делает проверку, если увидит, что два значения равны друг другу, то возвращает результат true/ false (Boolean).
var myVariable = 3;
myVariable === 4;

Отрицание (Неравенство)

Возвращает логически противоположное значение, которое ему предшествует; превращает true в false, и т.д. Когда используется вместе с оператором равенства, оператор отрицания проверяет, являются ли два значения не равными.

Основное выражение true, но сравнение возвращает false, потому что мы отрицаем его:
var myVariable = 3;
!(myVariable === 3);
Здесь мы проверяем " myVariable НЕ равно 3". Это возвращает false, потому что myVariable равно 3.

Существует намного больше операторов для изучения, но этих пока хватит. Смотрите их полный список в разделе выражения и операторы.

Примечание: Смешивание типов данных может привести к некоторым неожиданным результатам при выполнении вычислений, поэтому будьте осторожны, правильно ссылайтесь на ваши переменные, чтобы получать ожидаемые результаты. Например, введите "35" + "25" в вашу консоль. Почему вы не получили результат, который вы ожидали? Потому, что кавычки превратили числа в строки, так что у вас в итоге получилась конкатенация строк, а не сложение чисел. Если вы введёте, 35 + 25, то получите правильный результат.

Условия

Условия - это кодовые структуры, которые позволяют вам проверять, истинно или ложно выражение, а затем выполнить другой код в зависимости от результата. Самая распространенная форма условия называется, if ... else. Например:

var iceCream = 'chocolate';
if (iceCream === 'chocolate') {
  alert('Yay, I love chocolate ice cream!');
} else {
  alert('Awwww, but chocolate is my favorite...');
}

Выражение внутри if ( ... ) - это проверка, которая использует тождественный оператор (как описано выше), чтобы сравнить переменную iceCream со строкой chocolate и увидеть равны ли они. Если это сравнение возвращает true, выполнится первый блок кода. Если нет, этот код пропустится и выполнится второй блок кода, после инструкции else.

Функции

Функции - способ упаковки функциональности, которую вы хотите использовать повторно. Всякий раз, когда вам нужна определенная процедура, вы можете просто вызвать функцию по её имени, а не переписывать весь код каждый раз. Вы уже видели некоторые функции, описанные выше, например:

1. var myVariable = document.querySelector('h1');

2. alert('hello!');

Эти функции, document.querySelector и alert, встроены в браузер для того, чтобы вы использовали их всякий раз, когда вам это необходимо.

Если вы видите что-то, что выглядит как имя переменной, но имеет после него скобки - (), скорее всего, это функция. Функции часто принимают аргументы - биты данных, которые им необходимы для выполнения своей работы. Они находятся в скобках, и разделяются запятыми, если присутствует более одного аргумента.

Например, функция alert() вызывает всплывающий блок, появляющийся в окне браузера, но мы должны дать ему строку в качестве аргумента, чтобы сказать функции, что писать во всплывающем блоке.

Хорошая новость заключается в том, что вы можете определить свои собственные функции - в следующем примере мы напишем простую функцию, которая принимает два числа в качестве аргументов и умножает их:

function multiply(num1,num2) {
  var result = num1 * num2;
  return result;
}

Попробуйте запустить вышеупомянутую функцию в консоли, затем попробуйте изменить аргументы, например:

multiply(4,7);
multiply(20,20);
multiply(0.5,3);

Примечание: Инструкция сообщает браузеру, что нужно вернуть переменную result из функции, которую можно будет использовать. Это необходимо потому, что переменные, определенные внутри функций, доступны только внутри этих функций. Это называется областью видимости переменной. (Читайте больше об области видимости переменных.)

События

Для создания действительной интерактивности на веб-сайте вам необходимы события. События - это структура, которая слушает то, что происходит в браузере, а затем позволяет вам запускать код в ответ на это. Наиболее очевидным является событие клика, которое вызывается браузером, когда мы щёлкаем по чему-то мышью. Для демонстрации этого события введите следующую команду в вашу консоль, а затем щёлкните по текущей веб-странице:

document.querySelector('html').onclick = function() {
    alert('Ouch! Stop poking me!');
}

Существуют множество способов прикрепить событие к элементу. Здесь мы выбираем элемент и устанавливаем ему обработчик свойства анонимной функцией (т.е. безымянной) которая содержит код, который мы хотим запустить для события клика.

Обратите внимание, что

document.querySelector('html').onclick = function() {};

эквивалентно

var myHTML = document.querySelector('html');
myHTML.onclick = function() {};

Просто так короче.

Прокачаем пример нашего веб-сайта

Теперь, когда мы прошли некоторые основы JavaScript, давайте добавим несколько крутых несложных функций в пример нашего сайта, чтобы дать вам некоторое представление о принципах работы.

Добавление смены изображения

В этом разделе мы добавим ещё одно изображение на наш сайт и добавим некоторый простой JavaScript для переключения между двумя изображениями, когда по ним щелкнули.

1. В первую очередь найдите другое изображение, которые вы хотели бы показать на вашем сайте. Убедитесь что оно такого же размера, как ваше первое изображение или максимально близкое к нему.

2. Сохраните изображение в вашу папку images.

3. Переименуйте это изображение в 'firefox2.png' (без кавычек).

4. Перейдите в ваш файл main.js и введите следующий JavaScript. (Если ваш "hello world" JavaScript по-прежнему существует, удалите его.)
var myImage = document.querySelector('img');

myImage.onclick = function() {
    var mySrc = myImage.getAttribute('src');
    if(mySrc === 'images/firefox-icon.png') {
      myImage.setAttribute ('src','images/firefox2.png');
    } else {
      myImage.setAttribute ('src','images/firefox-icon.png');
    }
}

5. Сохраните все файлы и загрузите index.html в браузере. Теперь, когда вы щёлкните по изображению, оно должно измениться на другое!

Итак, мы сохраняем ссылку на наш элемент в переменной myImage. Далее, мы создаём этой переменной обработчик события onclick с анонимной функцией. Теперь, каждый раз, когда на этот элемент изображения щёлкнут:

1. Мы получаем значение из атрибута src изображения.

2. Мы используем условие для проверки значения src, равен ли путь к исходному изображению:

1. Если это так, мы меняем значение src на путь ко 2-му изображению, заставляя другое изображение загружаться внутри элемента .

2. Если это не так (значит, оно должно было уже измениться), мы меняем значение src, возвращаясь к первоначальному пути изображения, каким он был изначально.

Добавление персонального приветственного сообщения

Далее мы добавим немного другого кода, чтобы изменить заголовок страницы на персонализированное приветственное сообщение, когда пользователь впервые зайдет на сайт. Это приветственное сообщение будет сохраняться, когда пользователь покинет сайт, а позже вернется - мы сохраним его с помощью Web Storage API. Мы также включим возможность изменить пользователя и, следовательно, приветственное сообщение, в любое время, когда это будет необходимо.

1. В index.html, добавьте следующую строку перед элементом :
<button>Change user</button>

2. В main.js, добавьте следующий код в конец файла, точно так, как написано - он захватит ссылки на новую кнопку и заголовок, и сохранит их в переменные:
var myButton = document.querySelector('button');
var myHeading = document.querySelector('h1');

3. Теперь добавьте следующую функцию для установки персонализированного приветствия - она ничего не будет делать, но мы будем использовать её позже:
function setUserName() {
  var myName = prompt('Please enter your name.');
  localStorage.setItem('name', myName);
  myHeading.textContent = 'Mozilla is cool, ' + myName;
}
Эта функция содержит функцию , которая вызывает диалоговое окно, немного похожее на alert() кроме того, что prompt() просит пользователя ввести некоторые данные, и сохраняет эти данные в переменной, после того как пользователь нажимает OK. В данном случае, мы просим пользователя ввести его имя. Далее, мы вызываем API под названием localStorage, который позволяет нам хранить данные в браузере и извлекать их позднее. Мы используем функцию setItem() из localStorage для создания и хранения данных в свойстве под названием 'name', и устанавливаем это значение в переменную myName, которая содержит имя введенное пользователем. В конце мы устанавливаем textContent заголовку в виде строки и имени пользователя.

4. Затем добавьте блок if ... else - мы могли бы назвать это кодом инициализации, поскольку он структурирует приложение при его первой загрузке:
if(!localStorage.getItem('name')) {
  setUserName();
} else {
  var storedName = localStorage.getItem('name');
  myHeading.textContent = 'Mozilla is cool, ' + storedName;
}
Этот блок сначала использует оператор отрицания (логическое НЕ, представленное в виде !) чтобы проверить, существуют ли данные в пункте name. Если нет, то функция setUserName() запускается для их создания. Если данные существуют (то есть, пользователь установил его во время предыдущего посещения), мы извлекаем сохраненное имя, с помощью getItem() и устанавливаем textContent заголовку в виде строки плюс имя пользователя, так же, как мы делали внутри setUserName().

5. Наконец, установите обработчик события onclick на кнопку. При нажатии кнопки запускается функция setUserName(). Это позволяет пользователю установить новое имя, всякий раз, когда он захочет, нажатием кнопки:
myButton.onclick = function() {
  setUserName();
}

Теперь, когда вы впервые заходите на сайт, он попросит вас указать имя пользователя, а затем предоставит вам персональное сообщение. Вы можете изменить имя в любое время, нажав на кнопку. В качестве дополнительного бонуса, поскольку имя хранится внутри localStorage, оно сохраняется после закрытия сайта, сохраняя при этом персонализированное сообщение при следующем открытии сайта!

Заключение

Если вы следовали всем инструкциям в этой статье, в конечном итоге вы должны получить страницу, которая выглядит примерно так (вы также можете посмотреть нашу версию здесь):

Если вы застряли, вы всегда можете сравнить свою работу с нашим готовым примером кода на Github.

Здесь мы узнали только самую поверхность JavaScript. Если вам понравился этот язык и вы хотите изучить его поглубже, перейдите к нашему разделу изучение JavaScript.

В этом модуле

# data[].attributes.attachment_link.description
JavaScript - это язык программирования, который добавляет интерактивность на ваш веб-сайт (например: игры, отклик при нажатии кнопок или при вводе данных в формы, динамические стили, анимация). Эта статья поможет вам начать работать с этим захватывающим языком и даст вам представление о том, на что он способен.

# data[].attributes.body
идет в паре с HTML, требуется для любого вида веб-разработки

# data[].attributes.attachment_link.title
Основы CSS - Изучение веб-разработки | MDN

# data[].attributes.attachment_link.description
CSS (Cascading Style Sheets) — это код, который вы используете для стилизации вашей веб-страницы. Основы CSS помогут вам понять, что вам нужно для начала работы. Мы ответим на такие вопросы как: Как сделать мой текст черным или красным? Как сделать так, чтобы контент появлялся в определённом месте…

# data[].attributes.body
основа всех страниц в интернете

# data[].attributes.attachment_link.readable_text
HTML (Hypertext Markup Language) - это код, который используется для структурирования и отображения веб-страницы и её контента. Например, контент может быть структурирован внутри множества параграфов, маркированных списков или с использованием изображений и таблиц данных. Как видно из названия, эта статья даст вам базовое понимание HTML и его функций.

HTML не является языком программирования; это язык разметки, и используется, чтобы сообщать вашему браузеру, как отображать веб-страницы, которые вы посещаете. Он может быть сложным или простым, в зависимости от того, как хочет веб-дизайнер. HTML состоит из ряда элементов, которые вы используете, чтобы вкладывать или оборачивать различные части контента, чтобы заставить контент отображаться или действовать определённым образом. Ограждающие теги могут сделать слово или изображение ссылкой на что-то ещё, могут сделать слова курсивом, сделать шрифт больше или меньше и так далее. Например, возьмём следующую строку контента:

Моя кошка очень раздражена

Если бы мы хотели, чтобы строка стояла сама по себе, мы могли бы указать, что это абзац, заключая его в теги абзаца:

Давайте рассмотрим элемент абзаца более подробно.

Главными частями нашего элемента являются:

1. Открывающий тег (Opening tag): Состоит из имени элемента (в данном случае, "p"), заключённого в открывающие и закрывающие угловые скобки. Открывающий тег указывает, где элемент начинается или начинает действовать, в данном случае - где начинается абзац.

2. Закрывающий тег (Closing tag): Это то же самое, что и открывающий тег, за исключением того, что он включает в себя косую черту перед именем элемента. Закрывающий элемент указывает, где элемент заканчивается, в данном случае - где заканчивается абзац. Отсутствие закрывающего тега является одной из наиболее распространённых ошибок начинающих и может приводить к странным результатам.

3. Контент (Content): Это контент элемента, который в данном случае является просто текстом.

4. Элемент(Element): Открывающий тег, закрывающий тег и контент вместе составляют элемент.

Элементы также могут иметь атрибуты, которые выглядят так:

Атрибуты содержат дополнительную информацию об элементе, которую вы не хотите показывать в фактическом контенте. В данном случае, class это имя атрибута, а editor-note это значение атрибута. Класс позволяет дать элементу идентификационное имя, которое может позже использоваться, чтобы обращаться к элементу с информацией о стиле и прочих вещах.

Атрибут всегда должен иметь:

1. Пробел между ним и именем элемента (или предыдущим атрибутом, если элемент уже имеет один или несколько атрибутов).

2. Имя атрибута, за которым следует знак равенства.

3. Значение атрибута, заключённое с двух сторон в кавычки.

Вы также можете располагать элементы внутри других элементов - это называется вложением. Если мы хотим заявить, что наша кошка очень раздражена, мы можем заключить слово "очень" в элемент <strong> , который указывает, что слово должно быть сильно акцентированно:

Вы, однако, должны убедиться, что ваши элементы правильно вложены: в примере выше мы открыли первым элемент <p>, затем элемент <strong>, потом мы должны закрыть сначала элемент <strong>, затем <p>. Приведённое ниже неверно:

Элементы должны открываться и закрываться правильно, поэтому они явно располагаются внутри или снаружи друг друга. Если они перекрываются, как в примере выше, ваш веб-браузер будет пытаться сделать наилучшее предположение на основе того, что вы пытались сказать, что может привести к неожиданным результатам. Так что не стоит этого делать!

Некоторые элементы не имеют контента, и называются пустыми элементами. Возьмём элемент <img>, который уже имеется в нашем HTML:

Он содержит два атрибута, но не имеет закрывающего тега </img>, и никакого внутреннего контента. Это потому, что элемент изображения не оборачивает контент для влияния на него. Его целью является вставка изображения в HTML страницу в нужном месте.

Мы завершили изучение основ отдельных HTML элементов, но они не очень полезны сами по себе. Теперь мы посмотрим, как отдельные элементы объединяются в целую HTML страницу. Давайте вернёмся к коду, который мы записывали в наш index.html (с которым мы впервые встретились в статье Работа с файлами):

Здесь мы имеем:

<!DOCTYPE html> - доктайп. В прошлом, когда HTML был молод (около 1991/1992), доктайпы должны были выступать в качестве ссылки на набор правил, которым HTML страница должна была следовать, чтобы считаться хорошим HTML, что могло означать автоматическую проверку ошибок и другие полезные вещи. Однако в наши дни, никто не заботится об этом, и они на самом деле просто исторический артефакт, который должен быть включён для того, что бы все работало правильно. На данный момент это все, что вам нужно знать.

<html></html> - элемент <html>. Этот элемент оборачивает весь контент на всей странице, и иногда известен как корневой элемент.

<head></head> - элемент <head>. Этот элемент выступает в качестве контейнера для всего, что вы пожелаете включить на HTML страницу, но не являющегося контентом, который вы показываете пользователям вашей страницы. К ним относятся такие вещи, как ключевые слова и описание страницы, которые будут появляться в результатах поиска, CSS стили нашего контента, кодировка и многое другое.

<body></body> - элемент <body>. В нем содержится весь контент, который вы хотите показывать пользователям, когда они посещают вашу страницу, будь то текст, изображения, видео, игры, проигрываемые аудиодорожки или что-то ещё.

<meta charset="utf-8"> - этот элемент устанавливает UTF-8 кодировку вашего документа, которая включает в себя большинство символов из всех известных человечеству языков. По сути, теперь документ может обрабатывать любой текстовый контент, который вы в него вложите. Нет причин не устанавливать её, так как это может помочь избежать некоторых проблем в дальнейшем.

<title></title> - элемент <title>. Этот элемент устанавливает заголовок для вашей страницы, который является названием, появляющимся на вкладке браузера загружаемой страницы, и используется для описания страницы, когда вы добавляете её в закладки/избранное.

Давайте снова обратим наше внимание на элемент изображения:

Как было сказано раньше, код встраивает изображение на нашу страницу в нужном месте. Это делается с помощью атрибута src (source, источник), который содержит путь к нашему файлу изображения.

Мы также включили атрибут alt (alternative, альтернатива). В этом атрибуте, вы указываете поясняющий текст для пользователей, которые не могут увидеть изображение, возможно, по следующим причинам:

1. У них присутствуют нарушения зрения. Пользователи со значительным нарушением зрения часто используют инструменты, называемые Screen Readers (экранные дикторы), которые читают для них альтернативный текст.

2. Что-то пошло не так, в результате чего изображение не отобразилось. Например, попробуйте намеренно изменить путь в вашем атрибуте src, сделав его неверным. Если вы сохраните и перезагрузите страницу, то вы должны увидеть что-то подобное вместо изображения:

Альтернативный текст - это "пояснительный текст". Он должен предоставить читателю достаточно информации, чтобы иметь представление о том, что передаёт изображение. В этом примере наш текст "My test image" ("Моё тестовое изображение") не годится. Намного лучшей альтернативой для нашего логотипа Firefox будет "The Firefox logo: a flaming fox surrounding the Earth" ("Логотип Firefox: огненный Лис вокруг Земли").

Сейчас попробуйте придумать более подходящий альтернативный текст для вашего изображения.

В этом разделе рассмотрим некоторые из основных HTML элементов, которые вы будете использовать для разметки текста.

Элементы заголовка позволяют вам указывать определённые части вашего контента в качестве заголовков или подзаголовков. Точно так же, как книга имеет название, названия глав и подзаголовков, HTML документ может содержать то же самое. HTML включает шесть уровней заголовков <h1> (en-US)-<h6> (en-US), хотя обычно вы будете использовать не более 3-4 :

Теперь попробуйте добавить подходящее название для вашей HTML страницы, чуть выше элемента <img>.

Как было сказано раньше, элемент <p> предназначен для абзацев текста; вы будете использовать их регулярно при разметке текстового контента:

Добавьте свой образец текста (вы создавали его в статье Каким должен быть ваш веб-сайт?) в один или несколько абзацев, расположенных прямо под элементом <img>.

Большая часть веб-контента является списками и HTML имеет специальные элементы для них. Разметка списка всегда состоит по меньшей мере из двух элементов. Наиболее распространёнными типами списков являются нумерованные и ненумерованные списки:

1. Ненумерованные списки - это списки, где порядок пунктов не имеет значения, как в списке покупок. Они оборачиваются в элемент <ul>.

2. Нумерованные списки - это списки, где порядок пунктов имеет значение, как в рецепте. Они оборачиваются в элемент <ol>.

Каждый пункт внутри списков располагается внутри элемента <li> (list item, элемент списка).

Например, если мы хотим включить часть следующего фрагмента абзаца в список:

Мы могли бы изменить разметку на эту:

Попробуйте добавить упорядоченный или неупорядоченный список на свою страницу.

Ссылки очень важны - это то, что делает Интернет Интернетом. Чтобы добавить ссылку, нам нужно использовать простой элемент - <a> - a это сокращение от "anchor" ("якорь"). Чтобы текст в вашем абзаце стал ссылкой, выполните следующие действия:

1. Выберите некоторый текст. Мы выбрали текст "Манифест Mozilla".

2. Оберните текст в элемент <a>, например так:

3. Задайте элементу <a> атрибут href, например так:

4. Заполните значение этого атрибута веб-адресом, на который вы хотите указать ссылку:

<a href = "https://www.mozilla.org/ru/about/manifesto/details/" > Манифест Mozilla</a >

Вы можете получить неожиданные результаты, если в самом начале веб-адреса вы опустите https:// или http:// часть, называемую протоколом. После создания ссылки, кликните по ней, чтобы убедиться, что она направляет вас туда, куда вы хотели.

Примечание: href сначала может выглядеть довольно непонятым выбором для имени атрибута. Если у вас возникли проблемы с тем, чтобы запомнить его, можете запомнить, что атрибут href образуется как hypertext reference ("гипертекстовая ссылка").

Теперь добавьте ссылку на вашу страницу, если вы ещё не сделали этого.

Если вы следовали всем инструкциям в этой статье, то вы должны увидеть в конечном итоге страницу, аналогичную рисунку ниже (вы также можете посмотреть её здесь):

Если вы застряли, вы всегда можете сравнить свою работу с нашим готовым примером кода на GitHub.

Здесь вы узнали только самую поверхность HTML. Чтобы узнать больше, перейдите на страницу Обучение HTML: руководства и уроки.

# data[].attributes.attachment_link.title
Основы HTML - Изучение веб-разработки | MDN

# data[].attributes.attachment_link.description
HTML (Hypertext Markup Language) - это код, который используется для структурирования и отображения веб-страницы и её контента. Например, контент может быть структурирован внутри множества параграфов, маркированных списков или с использованием изображений и таблиц данных. Как видно из названия, эта статья даст вам базовое понимание HTML и его функций.

# data[].attributes.headline
Языки, которые опытные программисты советуют для изучения

# data[].attributes.subject
Языки, которые опытные программисты советуют для изучения

# data[].attributes.headline
Технологии, без которых невозможен веб

# data[].attributes.subject
Технологии, без которых невозможен веб

# data[].attributes.headline
Языки программирования 

# data[].attributes.subject
Языки программирования 