JSFiddle - React, Tailwind, and code Playground
by Alexey Ossikine
JavaScript
function arrayToString(arr){
let result = '';
for (var i=0, l=arr.length; i<l; i++){
if(result) result += "\r\n";
if (arr[i] instanceof Array) result += arr[i].flat().join(' ');
else result += arr[i];
}
return result;
}
console.log(arrayToString([ [ 'library/utils.js', '2019-06-09 18:19:08' ],
[ 'bot/init.js', '2019-06-09 17:13:47' ],
[ 'models/instance.js', '2019-06-09 16:49:07' ],
[ 'package-lock.json', '2019-06-09 16:40:37' ],
[ 'package.json', '2019-06-09 16:40:37' ],
[ 'library/monitor.js', '2019-06-09 16:35:25' ],
[ 'library/timekeeper.js', '2019-06-03 13:25:23' ],
[ 'bin/www', '2019-06-03 12:46:13' ],
[ 'models/checkins.js', '2019-06-02 22:07:11' ],
[ 'bot/cluster.js', '2019-06-02 22:05:44' ],
[ 'library/redis.js', '2019-06-02 22:04:41' ],
[ 'models/checkin.js', '2019-06-02 21:50:51' ],
[ 'library/metrics-collector.js', '2019-06-02 21:48:19' ],
[ 'library/exchanges/coinbase-pro.js', '2019-06-02 21:29:08' ],
[ 'library/exchanges/coinbase-pro-user-client.js',
'2019-06-02 21:29:00' ],
[ 'library/logger.js', '2019-06-02 21:27:08' ],
[ 'library/mysql.js', '2019-06-02 21:16:46' ],
[ 'config.json', '2019-06-02 15:45:45' ],
[ 'models/timestamp.js', '2019-06-02 11:23:34' ],
[ 'library/constants.js', '2019-05-22 14:04:53' ],
[ 'library/validator.js', '2019-05-22 12:54:32' ],
[ 'models/prices.js', '2019-05-20 17:59:01' ],
[ '2019-05-20 Cryptobot WIP.zip', '2019-05-20 17:55:06' ],
[ 'library/cache.js', '2019-05-20 14:04:00' ],
[ 'library/recorder.js', '2019-05-19 15:50:35' ],
[ 'library/redis-pipeline.js', '2019-05-19 15:34:23' ],
[ 'library/trader.js', '2019-05-04 16:01:09' ],
[ 'library/notifier.js', '2019-05-04 15:52:06' ],
[ '2018-04-28 Cryptobot WIP (no changes).zip',
'2018-04-28 18:44:55' ],
[ '2018-03-04 Cryptobot WIP.zip', '2018-03-04 14:07:00' ] ]));