Pot.js と PotLite.js で利用可能。
分解されたトークンの配列を文字列に結合します。
Pot.tokenize() などで分解されたトークンの配列を文字列に結合します。
その際に、['++' '+'] などの間にはスペースが入ります。
トークンが正しい文法で分解されたものであれば、SyntaxError の起きない文字列表現が取得できます。
Pot.globalize() が適応されている場合、Pot.joinTokens() が joinTokens() で実行できます。
結合した文字列が返ります。
// Pot.tokenize() から Pot.joinTokens() をすることで簡易な minify が可能です
var hoge = function() {
var a = 1, b = 0.5, c = '"hoge"', $d = /'\/'/g;
return $d.test(c) ? a : b;
};
var tokens = Pot.tokenize(hoge);
var result = Pot.joinTokens(tokens);
// -- results e.g., --
// 'function(){\n' +
// 'var a=1,b=0.5,c=\'"hoge"\',$d=/\'\\/\'/g;\n' +
// 'return $d.test(c)?a:b;\n' +
// '}'