簡體   English   中英

使用ES6過濾帶有數組的對象

[英]filter the objects with array using ES6

如何使用ES6找到ARRAY的長度:

var x = [{a:"apple", b:"Baloon"},{a:"elephant", b:"dog"}];

var results = x.filter(aValue => aValue.length > 3);

console.log(results);

注意:如果這是單獨的數組列表,則aValue.length會起作用。 但是,因為這些是分配給屬性的值。 防爆; a:蘋果 ,需要差異方法。

我需要更換“aValue.length”以找到大於3的值的長度,所以答案是蘋果,氣球和大象?

這將滿足您的需求

var results = x.filter(val => Object.keys(val).length > 3)

Object.keys()方法返回對象中包含的所有鍵的數組。

對象沒有length屬性。 但是有一個小技巧可以讓你獲得一個對象的鍵數。

有兩種方法可以使用。 Object.getOwnPropertyNames(val).lengthObject.keys(val).length

但是,兩者之間存在一點差異。 Object.getOwnPropertyNames(a)返回對象a的所有屬性。 Object.keys(a)返回所有可枚舉的自有屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM