gpt4 book ai didi

当用于 amount = "$ 75.00 USD"时,Javascript string() 函数在 IE、FF 中返回正确的值,但在 chrome 中返回正确的值

转载 作者:行者123 更新时间:2023-12-02 22:42:02 24 4
gpt4 key购买 nike

我目前遇到一个似乎无法解决的问题。

var amount = "$ 75.00 USD";

我只想要 75.00 部分。我尝试了以下方法:

var new_str = amount.split(" ");

这在 Chrome 中给了我以下结果:

0:“75.00 美元”1:“美元”

所以我找到了另一种解决方法:

var new_str = amount.substring(amount.indexOf(' '), 2).replace(',','');

这给了我 75.00,正如我在 Chrome 和 FF 中想要的那样。

问题是在 IE 中它给了我 0。

但是,当我尝试时

var new_str = amount.split(" ");

在 IE 中

0:“$”1:“75.00”2:“美元”

我只是想找到一个对两者都适用的函数..我当然可以创建一个 if 语句,但我只是认为 split 应该起作用..

还有其他人遇到过这个问题吗?

最佳关

最佳答案

@mbojko解决方案类似,但我们寻找数字 - 点 - 数字模式,而不是剥离非数字值:

const amount = "$ 75.00 USD $ 80.01 EUR";
const matches = amount.match(/\d+\.?\d*/g);

console.log(matches[0]);
console.log(matches[1]);

如您所见,它也适用于多次重复。

关于当用于 amount = "$ 75.00 USD"时,Javascript string() 函数在 IE、FF 中返回正确的值,但在 chrome 中返回正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58558543/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com