Основен туторијал за JavaScript
Основи
Вовед
Пуштање на JavaScript
Прва програма во JavaScript
Анализа на кодот на програмата
Понатамошни примери
Датотеки со скрипти
Повеќе датотеки
Забелешка
Кеширање на датотеки
Строг режим
Коментари
Променливи
Користење на променливи
Декларирање на повеќе променливи
Промени на вредностите на променливите
Повеќе let за една променлива
Математички операции со броеви
Математички операции со променливи
Приоритет на математичките операции
Еднаков приоритет
Групирачки загради
Дропки
Негативни броеви
Плус пред променливи
Остаток од делење
Степенирање
Приоритет на степенувањето
Стрингови
Собирање на стрингови
Должина на стринг
Шаблонски стрингови
Многуредност
Специјални вредности
Вредност undefined
Вредност null
Вредности true и false
Вредност NaN
Infinity и -Infinity
Конзола
Тип на податоци во конзолата
Грешки во конзолата
Константи
Автоматско преобразување на типови
Преобразување во број
Кратко преобразување во број
Преобразување на некоректни броеви
Извлекување на броеви
Преобразување во стринг
Примена на преобразување во стринг
Преобразување на логички тип
Преобразување во логички тип
Симболи на стрингот
Непроменливост на стринговите
Последен симбол на стрингот
Стрингови со цифри
Пристап до цифрите на бројот
Операции за промена на променливата
Скратени операции во JavaScript
Инкрементација
Префиксен и постфиксен тип
Неточно пресметување
Функција prompt
Проблем со типови во prompt
Исход во документ
Практикум за наоѓање грешки
Практикум за операции
Практикум за формули
Низи
Вовед во низи
Добивање на елементи
Должина на низата
Промена на елементи
Презапишување на елементите на низата
Инкрементација на елементи
Додавање елементи по клучеви
Ретки низи
Додавање елементи преку push
Клучеви од променливи
Операторот delete
Практика за наоѓање грешки
Објекти
Вовед во објекти
Приказ на целиот објект
Стринговски клучеви на објекти
Својства на објекти
Ограничувања на клучевите на објекти
Промена на елементи
Додавање на елементи
Неподреденост на објекти
Низа од клучеви на објектот
Должина на објектот
Клучеви од променливи
Грешка при пристап до елемент
Грешка при пристап до својство
Пресметани својства
Операторот in
Операторот delete
Типизација на објекти
Низи како објекти
Разликуваме низи од објекти
Објекти и примитиви
Пренос на објекти по референца
Константи
Пристап на програмирање преку константи
Практика за пронаоѓање грешки
Услови
Конструкција if-else
Оператори поголемо и помало
Проверка на еднаквост
Проверка на нееднаквост
Споредување на променливи
Еднаквост на стрингови
Еднаквост на стрингови и броеви
Еднаквост по вредност и тип
Нееднаквост по вредност и тип
Логичко И
Логичко ИЛИ
Приоритет на логички оператори
Групирање на услови
Инвертирање на логички изрази
Услови со булови вредности
Споредување на вредности со булов тип
Скратена форма на проверка на вистинитост
Скратена форма на проверка на неточност
Општа скратена форма на проверка
Сложени услови во скратена форма
Незадолжителност на конструкцијата else
Незадолжителност на големи загради
Проблем на незадолжителност на загради
Конструкција else if
Вгнездени конструкции if-else
Конструкција switch-case
Незадолжителност на break
Тернарен оператор
Логички операции
Функција confirm
Опсег на видливост
Нијанси на опсегот на видливост
Проверка на делови од час
Проверка на должина на стрингови и низи
Проверка на карактери на стринг
Проверка на цифри на број
Проверка на остаток од делење
Практикум на пронаоѓање грешки
Практикум
Цикли
Вовед
Цикл for-of
Цикл for-in
Цикл while
Цикл for
Цикл for за низи
Услови во циклите
Акумулација на збир на броеви
Акумулација на збир на елементи
Формирање на стрингови
Цифри на број
Незадолжителност на големи загради
Проблем на незадолжителност на загради
Инструкција break
Инструкција continue
Вгнездени цикли
Опсег на видливост
Вгнездени цикли и опсег на видливост
Пополнување на низи
Промена на низи
Пополнување на објекти
Промена на објекти
Работа со знамиња
Совети за пишување код
Совети за дебагирање на код
Практика за наоѓање грешки
Практикум
Мултидимензионалност
Мултидимензионални низи
Тридимензионална низа
Арбитрарни низи
Итерација на мултидимензионални низи
Итерација преку обичен for
Пополнување на мултидимензионални низи
Проблеми при пополнување на мултидимензионални низи
Пополнување на мултидимензионални низи по ред
Мултидимензионални објекти
Итерација на мултидимензионални објекти
Мултидимензионални структури
Итерација на мултидимензионални структури
Низа од објекти
Клучеви од променливи
Додавање елементи во низи
Додавање елементи во објекти
Стандардни методи
Степени
Функции за заокружување
Екстреми
Случајност
Апсолутни вредности
Регистар на знаци
Сечење стрингови
Пребарување по стрингови
Замена во стрингови
Поделба на стрингови
Крајни елементи
Делови од низи
Сечење низи
Пребарување по низи
Клучеви на објекти
Практика за наоѓање грешки
Кориснички функции
Вовед
Параметри на функцијата
Повеќе параметри
Параметри-променливи
Опционални параметри
Инструкција return
Секвенцијален повик на функции
Фино место return
Циклус и return
Примена на return во циклуси
Трик за работа со return
Знамиња во функции
Логички оператори во функции
Совети за функции
Практика за наоѓање грешки
Практикум за функции
Променливи на функции
Глобални променливи
Локални променливи
Совпаѓање на имиња на променливи
Промена на глобални променливи
Глобални променливи и параметри на функции
Совпаѓање на имиња со параметри
Параметри-објекти
Типови на функции
Изворен код на функцијата и резултат
Функција како променлива
Запишување функција во друга променлива
Доделување функции во променливи
Совпаѓање на името на функцијата и променливата
Типови на декларации
Разлика на декларации на функции
Точка и запирка при декларирање на функции
Нијанси на функционални изрази
Функција со име, но Function Expression
Именувани функционални изрази
Како да се провери типот на функција
Израз лево
Израз десно
Низа со функции
Објект со функции
Примена на објект со функции
Вгнездени функции
Пренос на функции како параметри
Именувани функции
Параметри на пренесените функции
Пренос на број како параметар
Примена
Внатрешни функции
Опсег на видливост на вгнездените функции
Параметри на надворешната функција
Параметри на надворешната и внатрешната функција
Параметри со исто име
Функција што враќа функција
Кој било степен на вгнездување
Параметри на вратената функција
Функции-колбек
Нијанси на колбеците
Стрелочни функции
Примена на стрелочни функции
синх. со преводот
Затворања
Пристап до надворешни променливи
Лексичко опкружување на функции
Примена на лексичкото опкружување
Вовед во затворања
Бројач со затворања
Нијанса локална променлива
Нијанса глобална променлива
IIFE
Повикување на функција на место
Доделување на функција во променлива
Примена на повикување на функција на место
Кругли загради
Параметри
Повеќекратни повици
Замки
Точка и запирка за безбедност
Затворања и IIFE
Рекурзија
Вовед
Пример со параметар
Сума на елементите на низата при рекурзија
Мултидимензионални структури
Сума на елементите на низата
Манипулации со структури
Методи за итерација
Методот map
Методот forEach
Методот filter
Методот every
Методот some
Методот find
превод, задачи
Методот reduce
превод, задачи
Оператор spread
Вовед
Покомплексни примери
Екстремни вредности на низа
Спојување на низи
Поделба на стрингови
Поделба на броеви
Оператор rest
Деструктурирање
Деструктурирање на низи
Низа од функција
Прескокнување на елементи од низа
Вишок вредности во низа
Остаток од низа
Стандардни вредности за низи
Функции по стандард за низи
Декларирање на променливи за низи
Деструктурирање на објекти
Имиња на променливи за објекти
Стандардни вредности за објекти
Променливи и стандардни вредности за објекти
Декларирање на променливи за објекти
Параметри на функции
Деструктурирање на објекти параметри на функции
Време
Работа со објектот Date
Форматирање
Промена на форматот на датумот
Добивање на денот во неделата
Исход на датумот со зборови
Поставување на времето
Формат на timestamp
Разлика помеѓу timestamp
Разлика на објекти со датуми
Автоматско коригирање на датуми
Пронаоѓање на последниот ден во месецот
Определување на престапна година
Проверка на коректност
Добивање на денот од тековната година
Ден на следниот или претходниот месец
Ден на следната или претходната година
Разлика на моменти
Момент на време од денот
Почеток на денот
Крај на денот
Циклична проверка на моменти во времето
Практикум за добивање моменти во времето
Споредба на стрингови
Споредба на датум без година
Погодување на датум во интервал
Споредба на објекти со датум
Вовед во DOM
Вовед
DOM елементи
Добивање на DOM елементи
Сложени селектори на DOM елемент
Врзување на обработувачи
Именувани обработувачи
Еден обработувач кон елементи
Обработувачи на еден настан
Обработувачи на различни настани
Текст на елемент
HTML код на елемент
Атрибути на тагови како својства
Работа со текстови полиња
Фокус на текстови полиња
Атрибути-исклучоци
Ланци на методи и својства
Предности и недостатоци на ланци
Објект this
Предност на this
Добивање на група на елементи
Именувани обработувачи во циклус
Анонимни обработувачи во циклус
Отврзување на обработувачи на настани
Отврзување на обработувачи во циклус
Отврзување на анонимни обработувачи
Совети за пишување код
Практика за пребарување грешки
Практикум
Атрибути
Метод за добивање атрибути
Метод за поставување атрибути
Метод за отстранување атрибути
Метод за проверка атрибути
Кориснички атрибути
Имиња на атрибути со цртички
Пристапување до атрибути преку методи
Масив на CSS класи
Додавање на CSS класи
Отстранување на CSS класи
Проверка на CSS класи
Вклучување/Исклучување на CSS класи
Стилизирање
Стилизирање преку атрибут style
Стилизирање на својства со цртичка
Исклучок при стилизирање на елементи
Стилизирање преку CSS класи
Предност на стилизирање со CSS класи
Примена на стилизирање
Пребарување
Наоѓање на потомци на елементи
Наоѓање на родители на елементи
Пребарување на сите родители на елементи
Пребарување на соседи на елементи
Пребарување на елемент по id
Пребарување на елемент по име на таг
Пребарување на елемент по име на класа
Пребарување внатре во елемент
Јазли
Форми
Работа со textarea
Блокирање на елементи
Работа со checkboxes
Наизменично менување атрибути без вредности
Работа со radio buttons
Настан change
Настан input
Методи focus и blur
Практика за наоѓање грешки
Паѓачки листи
Работа со паѓачки листи
Атрибут value во паѓачки листи
Промена на избраната ставка од листата
Број на избраната ставка од листата
Добивање на ставките од паѓачката листа
Ставките како низа
Работа со ставките на паѓачката листа
Избор на ставка од листата
Добивање на избраната ставка
Објект Event
Основи на работа со објектот Event
Координати на настанот
Тип на настан
Елемент на настанот
Добивање на притиснати копчиња
Следење на копчиња-модификатори
Откажување на стандардното дејство
Подигнување на настани
Целен елемент при подигнување
Прекинување на подигнување на настани
Повеќе обработувачи на елемент
Веднаш прекинување на подигнување
Примена на прекинување на подигнување на настани
Зафаќање на настани
Обработувачи на нови елементи
Делегирање на настани
Универзално делегирање на настани
Контекст
Основи на работата со контекст
Контекст на неприкачена функција
Губење на контекст
Решавање на проблемот со контекст
Решение преку променлива
Решение преку параметар
Решение преку стрелкеста функција
Метод call
Метод call со параметри
Метод apply
Метод bind
Таймери
Пуштање на тајмер
Бројач на тајмер
Запирање на тајмер
Копчиња за пушање
Повеќекратно пуштање
Копчиња за запирање
Работа со DOM
Таймери и губење на контекст
Практикум на таймери и DOM
Одложување пред извршување
Таймер преку одложување
Манипулирање со елементи
Креирање и вметнување на елементи
Додавање на настани при вметнување
Креирање на елементи во циклус
Додавање на обработувачи во циклус
Отстранување на елементи
Вметнување од страна
Вметнување пред
Соседно вметнување
Соседно вметнување на тагови
Клонирање на елементи
Проверка на елементи
Практика
Креирање елементи од низа
Практика на креирање на листи ul
Креирање табели
Конзистентно пополнување на табели
Креирање табела од низа
Креирање табела од низа објекти
Додавање редови и колони во табела
Модификација на ќелии во табела
Бришење нови елементи
Линк за бришење на елемент
Креирање линкови за бришење
Уредување на посебен елемент
Криење текст при уредување
Уредување во сет на елементи
Бришење и уредување
Стилизирање на елементи
Копчиња за криење и прикажување на елемент
Многу елементи со копчиња за прикажување
Активирање на елементи
Наизменична смена на стилови на активација
Практика на промена на елементи
Функции и DOM
Функции за работа со DOM елемент
Функции за работа со група на елементи
Прослушување на колбек за работа со DOM
Прослушување на реднен број во колбек
Прослушување на елемент како параметар на функција
Прослушување на група елементи како параметри
Функција за креирање на HTML табели
Враќање на табела од функција
Функција за креирање на табела од низа