从具有特定值的对象中获取所有关键帧



我有一个名为x的对象。它看起来像这样:

{
a: 123,
b: null,
c: [1, 2, 3]
}

我想得到所有真实的键的名称,所以我需要得到一个看起来像["a", "c"]的数组,因为x.ax.c是真实的,但x.b不是。我该怎么做?

您可以使用Object.keysArray.prototype.filter来执行此操作。

var x = {
a: 123,
b: null,
c: [1, 2, 3]
}
var y = Object.keys(x).filter(item => !!x[item])
console.log(y)

!!操作员,引用这个答案:

Object转换为boolean。如果它是伪(例如0nullundefined等(,则它将是false,否则为true

因此,假设truthyValue为真,falsyValue为假,则!!truthyValue将始终为true,而!!falseyValue将始终为假。

最新更新