Самая мякотка, что я упомянул строки только в контексте того, что на sh кроме строк нихрена больше нет, и поэтому любую задачу приходится сводить до уровня возни со строками, если пишешь на этом ЯП.
А мой собеседник, я уж не знаю, что у него там в голове проинициализировалось неправильным значением, решил похвастать строковой мощщщщью питона.
У «вообще джаваскрипта» в определение языка не входит определение средств ввода-вывода.
И это нормально.
Такие вещи и в других ЯП следовало бы специфицировать отдельными документами.
Какое отношение, например, массивы, косинус или сортировка имеют к файлам? На целевой системе может вообще не быть понятия файла. А косинус и сортировка универсальны, так как суть математические абстракции.
А мой собеседник, я уж не знаю, что у него там в голове проинициализировалось неправильным значением, решил похвастать строковой мощщщщью питона.
Так я не понял, в чём моща-то? Названия методов другие? Есть какие-то итераторы обхода строки с самыми извращенными вариантами нарезки, которые работают в 4 раза быстрее, чем си? Есть какой-то сюр типа мутабельных строк, которые можно расширять на лету? Есть какой-то мегабыстрый стрингбилдер из коробки? Нихрена же нет, есть пачка дефолтных методов, которые есть давно у всех.
repl есть, я его юзаю в хвост и гриву. С пистоном, такого же, кстати сделать не шмог (там есть pyzo, но я хочу самодельное pyzo).
Или какой ввод тебе надо?
Почему для вывода есть функция, для работы которой не нужен модуль, а для ввода такой функции нет?
Ты про console.log()?
Потому что она может быть вообще noop. Или быть подключена к com-порту в глубинах девайса, через который снимают лог при ремонте. Это чисто отладочная тема. Что она есть, что нет, приложение работает одинаково.
Почему для вывода есть функция, для работы которой не нужен модуль, а для ввода такой функции нет?
Сделать где-то один require - теперь принципиальная и неразрешимая проблема. Сишечка без инклюда stdio тоже вводит только одни аргументы, но никого это никогда не смущало.
Это библиотека стандартного ввода-вывода, конечно это там определено. Но в джаваскрипте же вывод есть в стандартной библиотеке, а для ввода нужен модуль.
В стандартной библиотеке js нет ни ввода, ни вывода.
Prompt - это часть Browser Object Model API, как и Console. Т.е. API окружения.
В api ноды, есть чтение из консоли, и вообще работа с консолью, какая тебе угодно.
К слову говоря у си тоже нет никакого стандартного ввода, вывода и стандартной библиотеки - оно реализуется точно так же окружением. Попробуй использовать libc без ОС.
Для общего развития - жс это встраиваемый язык. Он может быть встроен куда угодно. Например он встроен в фотошоп. Какая тебе консоль в фотошопе?
Еще раз. Эта функция не предназначена для продуктивного вывода. Только для отладки.
А режим отладки нельзя включит подачей определённого сообщения в стандартный ввод? Или при отладке не надо будет ничего вводить (намного реже, чем выводить, но всё же)?
Тебе ее название о чем-нибудь говорит?
Логами называли корабельные журналы, в которые записывали информацию.
Никакого ввода в твоей микроволновке может не быть. И вывода не быть.
Очень удобно, что микроволновка на джаваскрипте и не работает.
Ты же не требуешь, чтобы в стандартной библиотеке были методы для работы с лампочками на микроволновке.
Конкретно с лампочками? Нет, конечно нет, для этого будет библиотека, расширяющая стандартную. Но ввод — дело несколько универсальнее зажигания лампочек.