Я хочу сделать следующее
var my_json = { a : 'lemon', b : 1 } function obj(json){ this.a = 'apple'; this.b = 0; this.c = 'other default'; }
после назначения
var instance = obj(my_json)
Я хочу получить
instance.a == 'lemon'
for(var key in json) { if(json.hasOwnProperty(key)) { this[key] = json[key]; } }
Блок if является необязательным, если вы точно знаете, что ничто не собирается расширять Object.prototype (что в любом случае плохо).
if
Object.prototype
Если вы хотите значения по умолчанию, как насчет;
function obj(json){ var defaults = { a: 'apple', b: 0, c: 'other default' } for (var k in json) if (json.hasOwnProperty(k)) defaults[k] = json[k]; return defaults }