Ввод/вывод командной строки Windows
Дорогие товарищи, подскажите пожалуйста, если я запускаю в командной строке Windows файл скрипта с расширением ".js", какими средствами осуществляется ввод/вывод? Например в C есть функции printf() и scanf(), в C++ - потоки CIN и COUT, какие для этого средства есть в JavaScript?
|
Скорее всего у вас не JavaScript а JScript или JScript.NET
для начала стоит определится что интерпретирует JS файл WScript.Echo("JScript"); // сработает в JScript/JScript.NET console.log("JavaScript"); // сработает в JavaScript |
JScript, команда WScript.Echo("JScript") выводит окно с сообщением.
|
Эта технология называется
Windows Script Host Справку по ней можно найти на сайте майкрософта чтение стандартного потока ввода имхо лучше сразу смотреть в сторону HTA |
Про ActiveX почитай
|
HTA там скрипты запускаются в IE-7
|
Аркадий Укупник,
Достаточно добавить <!DOCTYPE html> и <meta http-equiv="x-ua-compatible" content="ie=edge" />и hta будет работать через тот ie, что установлен. |
скрипты нельзя подключать по http[s]
<!doctype html> <html> <head> <meta http-equiv="x-ua-compatible" content="ie=edge"> <script src="http//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> </head> <body> <p>Some text.</p> <script> alert(navigator.userAgent); $(document.body).css('color: red'); </script> </body> </html> В прочем в расширениях для Chrome тоже |
Какой IE? Скрипт планирую запускать исключительно из командной строки win. Какой элемент ActiveX можно использовать для ввода/вывода?
|
HelloWorlder, внезапно скрипты в винде так или иначе запускаются движком ie.)
|
Попробовал через StdIn:
var input = ""; while (!WScript.StdIn.AtEndOfLine) { input += WScript.StdIn.Read(1); } WScript.Echo(input); На строке: while (!WScript.StdIn.AtEndOfLine) выдает ошибку: ![]() |
скрипт запущен не тем интерпритатором
он запущен с помощью wscript.exe а нужно с помощью cscript.exe первый работает в графическом режиме второй в консольном |
Всем спасибо! Проблема решена. :)
|
Часовой пояс GMT +3, время: 05:57. |