繁体   English   中英

返回非空数组

[英]Return array that is not empty

我有两个这样的数组

const array1 = ['1','2','3'];
const array2 = [];

但它可能是array1是空的,第二个array2有成员,我需要的是我想创建getter来返回不为空的数组,像这样

 get notEmptyArray(): string[] {
    const array1 = ['1','2','3'];
    const array2 = [];
    return array1 or array2;
  }

我知道我可以做到

if (typeof array !== 'undefined' && array.length === 0) {
    // the array is defined and has no elements
}
if (array && !array.length) {
    // array is defined but has no element
}

但是有一些简单的内联吗?

使用三元运算符(或两个)可以使您的解决方案非常简洁。 这将首先检查 array1 是否有成员,如果有,则返回它。 如果不是,它将检查 array2 并返回它或 null(如果它也是空的):

 return array1 && array1.length ? array1 : array2 && array2.length ? array2 : null

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM