[英]Counting number of object properties with a name filter
我有一個看起來像的對象:
{a: 1, b:2, c:3, cp1:6, cp2:7 cp3:8, cp4:9}
我對對象中cpX出現的次數感興趣,Javascript(或jQuery)中是否有一種簡便的方法可以計算與模式匹配的出現次數。 就像是:
Object.keys(myObj,/cp\d+/).length();
我知道我自己可以對其進行迭代,但是如果此功能已經存在,我不會感到驚訝。
這可能會做到
var obj={a: 1, b:2, c:3, cp1:6, cp2:7 cp3:8, cp4:9};
var num=0;
for (var key in obj) {
if (/^cp/.test(key)) {
++num;
}
}
alert(num);
您可能可以使用地圖來完成此操作,但是我不確定該功能是否具有本機功能
Object.keys()
不支持過濾數組項。 但是您可以使用jQuery的grep()
函數來過濾您的鍵。
這個作品:
var x = {a: 1, b:2, c:3, cp1:6, cp2:7, cp3:8, cp4:9};
var cpItemsLength = $.grep(Object.keys(x), function(n) {
return /cp\d+/.test(n);
}).length;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.