Javascript 获取DOM中与给定正则表达式匹配的类集

Javascript 获取DOM中与给定正则表达式匹配的类集,javascript,collections,Javascript,Collections,我正在动态生成元素: <a class="gallery1" href="base64String"> <img src="base64StringThumbnail"> </a> 例如,如果我在DOM中有类为:gallery1、gallery2、gallery1、gallery3、gallery2的元素,我会得到: [gallery1,gallery2,gallery3]按任意顺序排列。 在C和java中,这对我来说很容易,但是我不知道如何在JS

我正在动态生成元素:

<a class="gallery1" href="base64String"> 
    <img src="base64StringThumbnail">
</a>
例如,如果我在DOM中有类为:
gallery1、gallery2、gallery1、gallery3、gallery2的元素,我会得到:
[gallery1,gallery2,gallery3]
按任意顺序排列。
在C和java中,这对我来说很容易,但是我不知道如何在JS中实现这一点。

< P>让我们考虑下面的代码,这些代码是所有的类,就像你所说的变量一样。
let allClasses = ['gallery1', 'gallery2', 'gallery1', 'gallery3', 'gallery2'];
现在只获取
['gallery1','gallery2','gallery3']
现在这样做

让所有类=['gallery1','gallery2','gallery1','gallery3','gallery2'];
让resultClasses=Array.from(新集合(所有类));

console.log(resultlasses);//['gallery1','gallery2','gallery3']
您可以使用
querySelectorAll()
将所有元素作为目标,并且属性以选择器开头。然后使用
.map()
循环遍历它们,从元素中获取类。最后,使用和删除重复项

请尝试以下方法:

var galleryList=document.querySelectorAll(“[class^=“gallery”]”);
var res=[…新集合(Array.from(galleryList.map)(g=>g.getAttribute('class')))];
控制台日志(res)

请参见此
$([class^='gallery'])
??
let allClasses = ['gallery1', 'gallery2', 'gallery1', 'gallery3', 'gallery2'];