Самый простой способ писать программы в javascript на рабочем столе?
Я ищу способ написать Javascript-программы/скрипты на рабочем столе, а не внутри браузера. Я хочу, чтобы он работал как Python - из командной строки, чтобы читать файлы, записывать файлы и т.д. Все решения, о которых я упоминал (Rhino, spidermonkey, V8), предназначены для встраивания. Кто-нибудь сделал простую реализацию для простого написания автономных программ с полными возможностями доступа к ОС и т.д.?
Для окон желательно, или, возможно, Linux
Ответы
Ответ 1
Существует Node.js, который позволяет вам писать JavaScript на стороне сервера. Node.js работает на Linux, Mac и Windows. У него также есть действительно хороший REPL, поэтому вы можете запустить его с вашего терминала, чтобы писать JavaScript и посмотреть, как он работает.
Ответ 2
Ганс уже упомянул Windows Script Host, но есть классный компилятор для JScript, и вы, вероятно, уже установили его (он поставляется с .NET). Вы можете написать свой JavaScript, используя любую из библиотек .NET, и скомпилировать его в файл Windows.exe. См. эту ссылку для ознакомления с компиляцией с jsc. Вы должны быть в состоянии найти больше оттуда.
Это не позволяет запускать из командной строки, как Script, без компиляции сначала, но вы можете быть заинтересованы в этом, так как это дает вам доступ ко многим библиотекам.
Здесь находится тестовая программа. jsc уже на моем пути, введите jsc в командной строке, чтобы увидеть, если он на вашем.
test.js:
import System.io;
import System;
function test()
{
Console.WriteLine("test");
};
function test2(arg)
{
Console.WriteLine(arg);
};
test();
test2("argtest");
Компиляция и запуск:
C:\test>jsc test.js
Microsoft (R) JScript Compiler version 8.00.50727
for Microsoft (R) .NET Framework version 2.0.50727
Copyright (C) Microsoft Corporation 1996-2005. All rights reserved.
C:\test>dir
Volume in drive C has no label.
Directory of C:\test
03/05/2010 09:19 AM <DIR> .
03/05/2010 09:19 AM <DIR> ..
03/05/2010 09:26 AM 5,120 test.exe
03/05/2010 09:23 AM 178 test.js
2 File(s) - bytes
3 Dir(s) - bytes free
C:\test>test.exe
test
argtest
C:\test>
Кажется, существуют некоторые серьезные ограничения, с которыми я столкнулся сразу в создании этой тестовой программы. Например, функции выглядят более строго типизированными, чем в среде браузера. Я не мог назвать test()
и передать аргумент, если я не определил этот параметр как часть определения функции. Если вы знакомы с JavaScript-браузером, вы знаете, что вы можете определить функцию с любым количеством параметров и вызвать ее с любым количеством аргументов.
Таким образом, кажется, что писать приложения в JavaScript на рабочем столе будет совершенно другим опытом, если есть намного больше различий в том, как вы привыкли его использовать.
Ответ 3
Если у вас Windows, у вас уже есть Windows Script Host. Вы можете использовать это для выполнения javascript-программ в Windows.
http://msdn.microsoft.com/en-us/library/9bbdkx3k(VS.85).aspx
Ответ 4
Простым способом разработки настольных приложений является использование Node Webkit - https://github.com/rogerwang/node-webkit
Удачи!
Ответ 5
Seed работает на платформе GNOME. Adobe AIR будет другим. См. Этот вопрос: Можете ли вы сделать Desktop Development с помощью JavaScript?.