stringray

0.1.3 • Public • Published

stringray

Build Status

Module that transforms a JS Array into a single String of newline-separated elements.

Getting started.

$ npm install stringray

Let's say you have a JSON Array dataset with 50 songs, where each element is an Object with 20+ keys. Once converted, stringray can convert these songs into a a single String of newline-separated elements. Specifically, it will:

  • process null elements on conversion,
  • converts Function elements to a '[Function : Function]' string, and
  • adds a newline at the end of every result

When used in conjunction with the split and through modules, you can consume and process each song one at a time as you wish.

Examples.

 
    // JavaScript Usage
    var stringray = require('stringray');
 
    // Instead of doing this...
    var ceeDee = [{ "c" : 3 }, {"d" : 4}];
    var output = '';
 
    for (var i = 0, il = ceeDee.length, obj; i < il; i++) {
      obj = ceeDee[i];
      output += JSON.stringify(obj) + '\n'
    }
 
    console.log(output);                //=> '{"c":3}\n{"d":4}\n'
 
    // stringray does the above in a single line.
    stringray([{ "c" : 3 }, {"d" : 4}]) //=> '{"c":3}\n{"d":4}\n'
 
    // stringray writes `null` to the output.
    stringray([null, 1, 2])             //=> 'null\n1\n2\n'
 
    // Any function elements are converted to a `[Function: Function]` string
    stringray([function() { }])         //=> '[Function: Function]\n'
 
    # CoffeeScript Usage 
    stringray = require 'stringray'
 
    nest = 
      artist: 'Slakah the Beatchild ft. Ebrahim'
      title: 'This Beautiful Feeling'
      meta:
          time: 231
          tags: ['neo-soul''summer vibes''slakah''ebrahim']
 
    stringray(nest)
    # =>'{"artist":"Slakah the Beatchild ft. Ebrahim","title":"This Beautiful Feeling","meta":{"time":231,"tags":["neo-soul","summer vibes","slakah","ebrahim"]}}\n' 

Test.

# clone this repo and cd inside it 
$ git clone https://github.com/francismakes/stringray && cd $_ 
 
# install jasmine-node as a dev-dependency 
$ npm install
 
# runs tests 
$ npm test        

Tasks.

  • [Local] Add example on using this stringray in conjunction with Node.js streams.
  • [Local] JSHint - include either a precommit hook, config, or gulp task to hint

Package Sidebar

Install

npm i stringray

Weekly Downloads

1

Version

0.1.3

License

MIT

Last publish

Collaborators

  • francismakes