您可以使用filter()
函数来从数组中删除空对象。下面是一个使用Angular 8的示例代码:
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
template: `
Array with empty objects:
{{ array | json }}
Array after removing empty objects:
{{ newArray | json }}
`,
styleUrls: ['./app.component.css']
})
export class AppComponent {
array: any[] = [
{ id: 1, name: 'John Doe' },
{},
{ id: 2, name: 'Jane Smith' },
{},
{ id: 3, name: 'Bob Johnson' }
];
newArray: any[];
constructor() {
this.newArray = this.array.filter(obj => Object.keys(obj).length !== 0);
}
}
在上面的示例中,array
是一个包含空对象的数组。在构造函数中,我们使用filter()
函数来过滤掉数组中的空对象,并将结果赋值给newArray
。最后,我们在模板中显示原始数组和过滤后的数组。
请注意,我们使用Object.keys(obj).length
来检查对象是否为空。如果对象的属性数量为0,则表示对象为空。