Skip to content

Instantly share code, notes, and snippets.

View mde's full-sized avatar

Matthew Eernisse mde

View GitHub Profile
@mde
mde / gist:1005311
Created June 2, 2011 20:57
JS inheritance stuff
var MyThing = function () {
this.a = function () {
};
this.b = [];
this.c = 'foo';
};
MyThing.prototype = new (function () {
var MY_SETTING = 2112;
var _myPrivateFunc = function () {
js> null > -1;
true
js> null < 1;
true
js> null > 0;
false
js> null < 0;
false
js> null == 0;
false
js> isNaN(null);
false
js> null > -1;
true
js> null < 1;
true
js> null > 0;
false
js> null < 0;
false
@mde
mde / gist:1050068
Created June 27, 2011 22:58
Async JSGI
var Response = require('ringo/webapp/response').Response
, Request = require('ringo/webapp/request').Request
, defer = require('ringo/promise').defer
, jsdeps = require('../jsdeps/index')
, setTimeout = require('ringo/scheduler').setTimeout;
exports.packages = function(req) {
var response = defer()
, params
, prereqs
// $('myDiv').bind('click', $.proxy(this.myFunc, this));
> var foo = {a: function () { console.log(this.b); }, b: true};
> foo.b;
true
> foo.a;
[Function]
> foo.a();
true
> var bar = foo.a;
> foo;
{ a: [Function], b: true }
@mde
mde / gist:2689923
Created May 13, 2012 19:50 — forked from johnmdonahue/gist:2671849
How to handle pre-req flow using Jake.exec
var spawn = require('child_process').spawn;
desc('Do thing 1');
task('thing1', [], function () {
var cmds = ['node -e "console.log(\'--> Thing 1... Executing\')"'];
console.log('--> Thing 1... Starting');
jake.exec(cmds, function () {
var echo = spawn('echo',
@mde
mde / gist:3388411
Created August 18, 2012 17:04
Associations for JS Model
// User, hasOne Profile
var u = User.create({
login: 'asdf'
, password: 'zerb'
, confirmPassword: 'zerb'
});
// Owner has to be saved to add an association
u.save(function (err, data) {
if (err) {
throw err;
@mde
mde / gist:3454410
Created August 24, 2012 19:02
Highlight Jake files as JS
" JS syntax for Jakefiles
au BufRead,BufNewFile Jakefile set filetype=javascript
" JS syntax for .jake files
au BufRead,BufNewFile *.jake set filetype=javascript
var Item = function () {
this.defineProperties({
name: {type: 'string'}
});
this.findByName = function (name, callback) {
geddy.model.Item.all({name: name}, callback);
}
}