JavaScript онлайн: запуск кода JS и Node.js

Write, run, and debug JavaScript or Node.js online in a full-featured browser IDE. Work with multiple files and packages, save your workspace, and collaborate in real time.

Предустановленные библиотеки
🚀 339,661 всего выполнений (665 в этом месяце)
Встроить
Вывод

Практикуйте JavaScript на задачах

Решайте задачи прямо в редакторе: запускайте тесты, отправляйте решение и получайте AI-рецензию.

Все задачи на JavaScript
Легко

Rectangle Perimeter

Compute the perimeter of a rectangle from its sides.

Вы освоите АрифметикаВозвращаемые значения
BeginnerLearning-pathVariables
Легко

Distance Between Points

Compute the straight-line distance between two points.

Вы освоите Теорема ПифагораКвадратные корни
BeginnerFunctionsLearning-pathmath
Легко

Days in a Month

Return how many days a month has, including leap years.

Вы освоите Правила календаряВспомогательные функции
BeginnerConditionsFunctionsLearning-path
Легко

Среднее из трёх

Вычислите среднее трёх целых чисел.

Вы освоите АрифметикаДеление
BeginnerLearning-pathVariables
Легко

Скалярное произведение двух векторов

Перемножьте два вектора поэлементно и сложите результаты — это основная операция любого нейрона.

Вы освоите ВекторыСкалярное произведение
Нейронные сетиискусственный интеллектмашинное обучение
Легко

Largest of Three

Pick the largest of three numbers without a built-in max.

Вы освоите СравненияСочетание условий
BeginnerConditionsLearning-path
Легко

Проверка на простое число

Определите, является ли число простым.

Вы освоите ДелимостьОптимизация циклов
BeginnerLoopsNumbersStudent-beginner
Легко

Число Армстронга

Проверьте, равно ли число сумме его цифр, возведённых в степень, равную количеству цифр.

Вы освоите Выделение цифрСтепени
BeginnerNumbersStudent-beginner
Легко

Row Sums

Add up every row of a grid.

Вы освоите Двумерные спискиВложенные циклы
BeginnerGridsLearning-path
Легко

Min and Max Together

Find the smallest and largest value in one pass.

Вы освоите Один проходНесколько возвращаемых значений
ArraysBeginnerFunctionsLearning-path
Легко

Подсчёт пар с заданной суммой

Посчитайте количество пар позиций, значения которых в сумме дают целевое число.

Вы освоите Пары индексовБез двойного счёта
ArraysBeginnerLearning-pathNested-loops
Легко

Hollow Square

Draw the outline of a square with * characters.

Вы освоите Определение границПостроение строк
BeginnerLearning-pathNested-loopsPatterns

⚡ Об этом онлайн-исполнителе JavaScript (Node.js)

CodeUtility JavaScript Executor позволяет писать и запускать современный JavaScript прямо в браузере - мгновенно и без какой-либо установки. Он использует реальные окружения Node.js для безопасного выполнения кода в изолированном контейнере, поддерживаются версии 16, 18 и 20.

Этот инструмент идеально подходит для тестирования сниппетов Node.js, изучения синтаксиса ES6+ или освоения базовых концепций JavaScript, таких как циклы, функции, массивы, промисы и поведение async/await.

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

Больше, чем просто запуск кода

В одном редакторе есть всё для работы: несколько файлов, изолированный терминал, библиотеки для выбранной версии, сохранение проектов, общий доступ по ссылке и совместная работа в реальном времени.

Как пользоваться редактором

Выберите версию языка, откройте или создайте файл, напишите код и нажмите «Запустить». Результат появится в терминале. После входа в аккаунт можно хранить файлы в рабочем пространстве, устанавливать библиотеки и работать над кодом вместе с другими.

  1. Выберите версию и отредактируйте текущий файл или откройте другой файл рабочего пространства.
  2. Запустите код, при необходимости введите данные в терминале и просмотрите сохранённую историю запусков.
  3. Используйте библиотеки, инструменты рабочего пространства, общий доступ и чат, когда для задачи требуется несколько фрагментов кода.

💡 Базовое руководство по Node.js для начинающих

1. Объявление переменных и констант

Используйте let или const для переменных с блочной областью видимости. const применяется для констант.

let x = 10;
const PI = 3.14;
let name = "Alice";
let isActive = true;

2. Условия (if / switch)

Используйте if, else if, else или switch для управления потоком выполнения.

let x = 2;
if (x === 1) {
  console.log("Один");
} else if (x === 2) {
  console.log("Два");
} else {
  console.log("Другое");
}

switch (x) {
  case 1:
    console.log("Один");
    break;
  case 2:
    console.log("Два");
    break;
  default:
    console.log("Другое");
}

3. Циклы

Используйте for, while и forEach для перебора данных.

for (let i = 0; i < 3; i++) {
  console.log(i);
}

let n = 3;
while (n > 0) {
  console.log(n);
  n--;
}

4. Массивы

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

let fruits = ["яблоко", "банан", "вишня"];
console.log(fruits[0]);
console.log(fruits.length);

5. Работа с массивами

Используйте методы push, pop, slice и reverse.

fruits.push("киви");
fruits.pop();
console.log(fruits.slice(0, 2));
console.log(fruits.reverse());

let squares = [1, 2, 3, 4, 5].map(x => x * x);
console.log(squares);

6. Ввод/вывод в консоли

Используйте console.log для вывода и модуль readline для ввода.

const readline = require('readline');

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout
});

rl.question("Как тебя зовут? ", name => {
  console.log(`Привет, ${name}`);
  rl.close();
});

7. Функции

Функции можно объявлять или выражать. Стрелочные функции часто используются в современном JavaScript.

function greet(name) {
  return `Привет, ${name}`;
}

const add = (a, b) => a + b;

console.log(greet("Alice"));
console.log(add(2, 3));

8. Объекты (Map)

Объекты хранят пары ключ‑значение. Они похожи на словари или отображения (maps).

let person = { name: "Bob", age: 25 };
console.log(person.name);
console.log(person["age"]);

// Коллекция Map из ES6
const map = new Map();
map.set("a", 1);
console.log(map.get("a"));

9. Обработка исключений

Используйте try, catch и finally для безопасной обработки ошибок.

try {
  throw new Error("Что-то пошло не так");
} catch (e) {
  console.log(e.message);
} finally {
  console.log("Очистка при необходимости");
}

10. Работа с файлами

Используйте модуль fs Node.js для чтения и записи файлов.

const fs = require("fs");

fs.writeFileSync("test.txt", "Привет, файл");
const data = fs.readFileSync("test.txt", "utf8");
console.log(data);

11. Работа со строками

Используйте методы trim(), toUpperCase(), replace() и split().

let text = "  Hello World  ";
console.log(text.trim());
console.log(text.toUpperCase());
console.log(text.replace("Hello", "Hi"));
console.log(text.split(" "));

12. Классы и объекты

ES6+ поддерживает ООП через синтаксис class.

class Person {
  constructor(name) {
    this.name = name;
  }
  greet() {
    return `Привет, я - ${this.name}`;
  }
}

const p = new Person("Alice");
console.log(p.greet());

13. Ссылки

Объекты и массивы в JavaScript передаются по ссылке.

function update(arr) {
  arr.push("changed");
}

let data = ["original"];
update(data);
console.log(data);  // ["original", "changed"]