encode.js 457 B

123456789101112131415161718
  1. var encode = module.exports = function (xs) {
  2. function bytes (s) {
  3. if (typeof s === 'string') {
  4. return s.split('').map(ord);
  5. }
  6. else if (Array.isArray(s)) {
  7. return s.reduce(function (acc, c) {
  8. return acc.concat(bytes(c));
  9. }, []);
  10. }
  11. }
  12. return new Buffer([ 0x1b ].concat(bytes(xs)));
  13. };
  14. var ord = encode.ord = function ord (c) {
  15. return c.charCodeAt(0)
  16. };