我在autoFill扩展上使用这个变量来获取页面上的字符串,并将其放在同一页面上的字段中。
minPrice = javascript:(document.getElementsByClassName('market_commodity_orders_header_promote')[1].innerHTML.replace("R$ ",""))
我的目标是在它的最终值上增加一个随机的美分数,但由于它是一个字符串,即使我删除了que "R$",我也不能只使用math.random。当我使用parseFloat时,它更让我头疼。
我尝试了许多不同的方法,但都没有成功,或者我得到了很多0和错误的小数大小写。
我的其他尝试
minPrice = javascript:((parseFloat(document.getElementsByClassName('market_commodity_orders_header_promote')[1].innerHTML.replace("R$ ","").replace(",","."))+(Math.random() * (0.120 - 0.0200) + 0.0200)).toFixed(2))
minPrice = javascript:(parseFloat(document.getElementsByClassName('market_commodity_orders_header_promote')[1].innerHTML.replace("R$ ","").replace(",",".")).toFixed(2))
为了获得正确的小数位数,我尝试将其设为parseInt并除以100,但我一直丢失美分值--每次尝试时,代码就变得越来越多but。
发布于 2021-05-28 23:04:13
不完全清楚你想要完成的是什么,但听起来你有一个字符串,比如:
R$12.812,12
你想在上面加几分钱吗?然后再把它转换回来?
如果是这样的话:
const input = 'R$12.812,12';
const numberOfCents = parseInt(input.replace(/\D/g,''));
const randomNumberOfCents = parseInt(Math.random() * 100);
const moneyStr = new Intl.NumberFormat('pt-BR', {
style: 'currency',
currency: 'BRL',
minimumFractionDigits: 2
}).format((numberOfCents + randomNumberOfCents)/100)
console.log(moneyStr);
https://stackoverflow.com/questions/67746170
复制相似问题