Skip to content

Instantly share code, notes, and snippets.

@linus-amg
Created June 29, 2015 17:13
Show Gist options
  • Save linus-amg/c2fb037761274fe1561a to your computer and use it in GitHub Desktop.
Save linus-amg/c2fb037761274fe1561a to your computer and use it in GitHub Desktop.
create or push
var util = require('util');
global.$ = global.jQuery = require('jquery');
$.extend = require('extend');
var _ = require('underscore');
var Backbone = require('backbone');
Backbone.$ = $;
require('backbone-nested');
var Model = Backbone.NestedModel.extend({
createOrPush: function(key, newValue) {
var value = this.get(key);
if (value && value.length > 0) {
value.push(newValue);
} else {
value = [newValue];
}
var setObj = {};
setObj[key] = value;
this.set(setObj);
}
});
var source = new Model();
source.createOrPush('a.b.c', 'ad');
source.createOrPush('a.b.c', 'adXXX');
console.log(util.inspect(source.toJSON(), {showHidden: false, depth: null}));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment