javascript - javascript匹配获取所有带有数字的类名
问题描述
我正在尝试获取其中包含数字的 body 标签的类,但被正则表达式卡住了
<body class='UjQWin PEfnhb s21aSi'>
var matches = document.body.className.match(/[0-9]+/);
if (matches) {
id = matches;
//document.getElementById("num").innerHTML = id;
console.log(id) //expected output s21aSi
}
在这种情况下,是否可以将输出设为 s21aSi?
解决方案
您可以从.classList
属性创建一个数组并过滤该数组,这是一个示例:
const result = [...document.body.classList].filter(cl => /\d/.test(cl));
console.log(result);
<body class='UjQWin PEfnhb s21aSi'>
推荐阅读
- java - WSL Bash 在 PATH 中找不到 java
- php - 对自定义 symfony 约束进行单元测试
- javascript - 使用带有负值的accounting.FormatMoney,Accounting.js
- javascript - 防止 .map 为不符合特定条件的值返回 undefined
- python - 我有一个python代码,在打印二维列表的最后一行打印了很多次,输出错误,我是初学者
- javascript - 如何在javascript中返回对象数组?
- laravel - 导入excel文件laravel时字段'id'没有默认值
- javascript - 在 React 中将 Promise 分配给变量
- c++ - 为什么使用“void”而不是特定数据类型作为 C++ 中使用类对象数组的函数的参数?
- amazon-web-services - 为什么 EBS 被强制在 AWS 中加密?