Если в вопросе не было опечатки,
и вместо level2 оба раза встречается level1, тогда сработает такой код:
var o = {
level1 : new function(){this.sub=2; /*...*/ },
};
В таком случае можно напрямую обращаться к свойству o.level1.sub,
но стоит помнить, что вызвать функцию o.level1() не получится,
т.к. o.level1 в этом случае — объект, созданный через конструктор («new function»),
а код на месте /*...*/ выполнится один раз в момент создания объекта.
Гениально. На диски, чтобы избежать путаницы, можно писать одну книгу (либо одну серию).
— Диски напоминают винил-пластинки, к которому они привыкли.
— Кнопки на панели — как кнопки на радио/магнитофоне.
А записать пачку дисков и подписать их — не проблема.