【发布时间】:2021-12-30 14:10:28
【问题描述】:
我正在尝试在 JavaScript 中的数字列表中选择特定类型的数字。 Console.log(vars) 输出下面的数字列表。并且我需要选择格式为 0.000 的数字,即小数点前至少一个数字,小数点后三个数字。
(66) ['47,416.00', '0.001', '08:17:36', '47,416.00', '0.005', '08:17:36', '47,416.00', '0.088', '08:17:36', '47,416.00', '0.003', '08:17:35', '47,416.00', '0.214', '08:17:33', '47,416.00', '0.005', '08:17:33', '47,416.00', '0.008', '08:17:33', '47,416.00', '0.005', '08:17:33', '47,416.00', '0.010', '08:17:33', '47,416.00', '0.758', '08:17:33', '47,416.00', '', '0.134', '08:17:33', '47,416.50', '', '0.004', '08:17:33', '47,416.00', '0.018', '08:17:31', '47,416.00', '0.171', '08:17:30', '47,416.00', '0.034', '08:17:28', '47,416.00', '', '0.010', '08:17:28', '47,416.50', '0.003', '08:17:28', '47,416.50', '1.000', '08:17:28', '47,416.50', '0.011', '08:17:28', '47,416.50', '0.001', '08:17:25', '47,416.50', '0.005', '08:17:25']
我尝试了一个正则表达式,您可以在下面的代码中看到它,但正则表达式只返回 true。
var tradescards = [];
let regex = /\d\.\d\d\d/;
function obser1() {
const trades = document.querySelector("#root > main > div.main-left > div.react-grid-layout > div:nth-child(3) > div > div.by-card__body > div > div");
const vars = [...trades.querySelectorAll("span")].map(span => span.textContent);
const observer = new MutationObserver(function (mutations) {
mutations.forEach(function (mutation) {
if (mutation.addedNodes.length) {
console.log(regex.test(vars));
}
})
});
observer.observe(trades, {
childList: true,
subtree: true,
attributes: true,
characterData: true
})
}
window.setTimeout(obser1, 1900);
【问题讨论】:
-
返回
true或false是.test()方法应该做的。你可能想look over some documentation. -
谢谢......
标签: javascript regex google-chrome-extension