JavaScriptコードを自動化するためにバッチスクリプトを作成しています。 WindowsとLinuxの両方で動作する必要があります。
コマンドラインツールを使用してJavaScriptコードを自動化するにはどうすればよいですか?
JavaScriptコードを自動化するためにバッチスクリプトを作成しています。 WindowsとLinuxの両方で動作する必要があります。
コマンドラインツールを使用してJavaScriptコードを自動化するにはどうすればよいですか?
まず、あなたのお気に入りのJavascriptベースのPretty Print/Beautifierを選んでください。私は http://jsbeautifier.org/ のファイルをダウンロードします。そのファイル https://github.com/beautify-web/js-beautify/blob/master/js/lib/beautify.js
次に、MozillaグループのJavaベースのJavascriptエンジン、 Rhino をダウンロードしてインストールします。 「インストール」は少し誤解を招きます。 zipファイルをダウンロードし、すべてを抽出し、Javaクラスパスにjs.jarを配置します(OS XのLibrary/Java/Extensions)。
java -cp js.jar org.mozilla.javascript.tools.shell.Main name-of-script.js
ステップ1からPretty Print/Beautifierを使用して、JavaScriptファイルを読み込んでステップ1からPretty Print/Beautifierを実行する小さなシェルスクリプトを作成します。例えば
//original code
(function() { ... js_beautify code ... }());
//new code
print(global.js_beautify(readFile(arguments[0])));
Rhinoは、ブラウザのコンテキストでは必ずしも意味をなさないが、コンソールコンテキストで行ういくつかの追加の便利な関数をjavascriptに与えます。関数printはあなたが期待することを行い、文字列を出力します。関数readFileは、ファイルパス文字列を引数として受け取り、そのファイルの内容を返します。
あなたは上記のようなものを呼び出すだろう
java -cp js.jar org.mozilla.javascript.tools.shell.Main beautify.js file-to-pp.js
Rhino の実行スクリプトで Java と Javascript を混在させてマッチさせることができます。