mirror of
https://github.com/marko-js/marko.git
synced 2025-12-08 19:26:05 +00:00
Marko v3: Improved code generation for empty objects and arrays
This commit is contained in:
parent
b8fd053bc3
commit
7fd574deb4
@ -522,6 +522,11 @@ class Generator {
|
|||||||
} else if (value === false) {
|
} else if (value === false) {
|
||||||
this.write('false');
|
this.write('false');
|
||||||
} else if (isArray(value)) {
|
} else if (isArray(value)) {
|
||||||
|
if (value.length === 0) {
|
||||||
|
this.write('[]');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
this.write('[\n');
|
this.write('[\n');
|
||||||
this.incIndent();
|
this.incIndent();
|
||||||
|
|
||||||
@ -549,12 +554,16 @@ class Generator {
|
|||||||
} else if (typeof value === 'number') {
|
} else if (typeof value === 'number') {
|
||||||
this.write(value.toString());
|
this.write(value.toString());
|
||||||
} else if (typeof value === 'object') {
|
} else if (typeof value === 'object') {
|
||||||
|
let keys = Object.keys(value);
|
||||||
|
if (keys.length === 0) {
|
||||||
|
this.write('{}');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
this.incIndent();
|
this.incIndent();
|
||||||
this.write('{\n');
|
this.write('{\n');
|
||||||
this.incIndent();
|
this.incIndent();
|
||||||
|
|
||||||
let keys = Object.keys(value);
|
|
||||||
|
|
||||||
for (let i=0; i<keys.length; i++) {
|
for (let i=0; i<keys.length; i++) {
|
||||||
let k = keys[i];
|
let k = keys[i];
|
||||||
let v = value[k];
|
let v = value[k];
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user