Skip to content

Instantly share code, notes, and snippets.

@ben-bradley
ben-bradley / notStupid.js
Created February 17, 2015 20:52
It's not stupid
if (stupid && works) stupid = false;
@ben-bradley
ben-bradley / wait.js
Last active August 29, 2015 14:14
Promise wait/delay
// Promise can be q.Promise in Node < 11.13
function wait(ms) {
return function(data) {
return Promise(functoin(resolve, reject) {
setTimeout(resolve, ms, data);
});
}
}
@ben-bradley
ben-bradley / stackCheck.js
Created January 26, 2015 23:10
javascript callstack check
// http://www.2ality.com/2014/04/call-stack-size.html
function computeMaxCallStackSize() {
try {
return 1 + computeMaxCallStackSize();
} catch (e) {
// Call stack overflow
return 1;
}
}
@ben-bradley
ben-bradley / sundays.js
Created January 15, 2015 19:59
Determine week start & end in javascript
var now = new Date();
var lastSunday = new Date();
var nextSunday = new Date();
lastSunday.setDate(now.getDate() - now.getDay());
nextSunday.setDate(lastSunday.getDate() + 7);
@ben-bradley
ben-bradley / async.js
Created January 13, 2015 16:42
A compilation of various promise generator controllers
// http://pag.forbeslindesay.co.uk/#/22
//
function async(makeGenerator){
return function (){
var generator = makeGenerator.apply(this, arguments)
function handle(result){ // { done: [Boolean], value: [Object] }
if (result.done) return result.value
return result.value.then(function (res){
@ben-bradley
ben-bradley / app.js
Last active August 29, 2015 14:12
Objectifying a CSV with streams!
var objectify = require('./objectify'),
fs = require('fs');
var source = fs.createReadStream(__dirname+'/file.csv');
var objects = source.pipe(objectify);
objects.on('data', function(object) {
// do something with the object
});
@ben-bradley
ben-bradley / uuid_regex.js
Created December 2, 2014 20:45
uuid regex
var uuid = /[a-f0-9]{8}(\-[a-f0-9]{4}){3}\-[a-f0-9]{12}/;
@ben-bradley
ben-bradley / command.sqf
Created November 2, 2014 01:48
Arma 3 command to show class names
hint format ["%1", [(configFile >> "CfgGroups" >> "INDEP" >> "PG_Services" >> "Infantry"),1, true, true ] call BIS_fnc_returnChildren];
@ben-bradley
ben-bradley / bind.js
Created October 30, 2014 14:51
Fun with bind/call prototypes
// https://variadic.me/posts/2013-10-22-bind-call-and-apply-in-javascript.html
var bind = Function.prototype.call.bind(Function.prototype.bind);
var Ping = function(host, option) {
// do stuff
return this;
}
Ping.prototype.send = function() {
// do more stuff
@ben-bradley
ben-bradley / ascii-chart.js
Last active August 29, 2015 14:07
ASCII charts in the command line with Node.js
// http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/x361.html
var chart = require('ascii-chart'),
_ = require('lodash');
var data = [];
var out = process.stdout;
out.write('\033[2J'); // clear the screen