[英]How to I check that the length of text of an element is greater than 0 in nightwatch?
[英]Check in object array if the length of groups is greater than zero in a OF element
我有一個對象數組。 在這個對象中,我有一組決定數量的組。
有一種方法可以檢查對象數組中的組是否大於零,其中 OF 元素等於 12.2。
我試過的
Sort = [
{
id: 1,
of: 12.2,
tam: 's',
name: 'Color Run',
groups: [
{
type: 'type1',
quant: 21
}
]
},
{
id: 2,
of: 12.2,
tam: 'M',
name: 'Color Run',
groups: []
},
{
id: 3,
of: 2.2,
tam: 'L',
name: 'Works',
groups: []
}
];
ngOnInit() {
console.log(this.Sort)
var x = this.Sort.forEach(element => {
if(element.of == 12.2){
if(element.groups.length > 0){
return true;
}
else{
return false;
}
}
});
console.log(x)
}
forEach
忽略返回值並對所有元素執行。 因此,使用some()
( 此處的文檔)會更容易且性能更高,例如
const exists = this.Sort.some(s => s.of === 12.2 && s.groups.length > 0);
如果你無論如何都想使用 forEach,你可以將你的布爾值放在循環之外,初始值為false
,然后僅當元素存在時才將它的值設置為 true ,例如
let exists = false;
this.Sort.forEach(e => {
if (e.of === 12.2 && e.groups.length > 0) {
exists = true;
}
});
我只是發布沒有角度部分來運行並查看輸出
Sort = [ { id: 1, of: 12.2, tam: 's', name: 'Color Run', groups: [ { type: 'type1', quant: 21 } ] }, { id: 2, of: 12.2, tam: 'M', name: 'Color Run', groups: [] }, { id: 3, of: 2.2, tam: 'L', name: 'Works', groups: [] } ]; console.log(this.Sort) var x = this.Sort.filter(element => element.of === 12.2 && element.groups.length >0); console.log("Filtered Output") console.log(x)
你可以這樣試試
import { Component } from '@angular/core';
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
Sort = [
{
id: 1,
of: 12.2,
tam: 's',
name: 'Color Run',
groups: [
{
type: 'type1',
quant: 21
}
]
},
{
id: 2,
of: 12.2,
tam: 'M',
name: 'Color Run',
groups: []
},
{
id: 3,
of: 2.2,
tam: 'L',
name: 'Works',
groups: []
}
];
ngOnInit() {
console.log(this.Sort);
let groupLengthList = [];
for (const data of this.Sort) {
if (data.of === 12.2) {
if (data.groups.length > 0) {
groupLengthList.push(true);
} else {
groupLengthList.push(false);
}
}
}
console.log(groupLengthList);
}
}
只需使用過濾器原型即可完成這項工作:
let Sort = [ { id: 1, of: 12.2, tam: 's', name: 'Color Run', groups: [ { type: 'type1', quant: 21 } ] }, { id: 2, of: 12.2, tam: 'M', name: 'Color Run', groups: [] }, { id: 3, of: 2.2, tam: 'L', name: 'Works', groups: [] } ]; let res = Sort.filter(e => e.of == 12.2 && e.groups.length > 0); console.log(res)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.