Marko v3: Improved code generation for empty objects and arrays

This commit is contained in:
Patrick Steele-Idem 2016-02-09 15:20:44 -07:00
parent b8fd053bc3
commit 7fd574deb4

View File

@ -522,6 +522,11 @@ class Generator {
} else if (value === false) {
this.write('false');
} else if (isArray(value)) {
if (value.length === 0) {
this.write('[]');
return;
}
this.write('[\n');
this.incIndent();
@ -549,12 +554,16 @@ class Generator {
} else if (typeof value === 'number') {
this.write(value.toString());
} else if (typeof value === 'object') {
let keys = Object.keys(value);
if (keys.length === 0) {
this.write('{}');
return;
}
this.incIndent();
this.write('{\n');
this.incIndent();
let keys = Object.keys(value);
for (let i=0; i<keys.length; i++) {
let k = keys[i];
let v = value[k];