-2

我有一个看起来像这样的字符串:

string = 5ft - +$28.87

我需要从那个字符串中取出价格(确保不要抢到 5)。

所以是这样的:

money = 28.87

该字符串有时也可能如下所示:

3ft - Free

在这种情况下,它应该返回 0。

我试过这个:

money=parseFloat(string.substring(string.indexOf('$')+1));

这似乎有效,除非3ft - Free它返回3

4

1 回答 1

1

这似乎有效,除了 3ft - Free 它返回 3

当然可以,如果找不到字符串则indexOf返回。是,所以你在做,结果是做的。-1-1 + 10substring(0)parseFloat

放一个分支:

var index = string.indexOf('$');
money = index === -1 ? 0 : parseFloat(string.substring(index + 1));
于 2013-04-01T21:55:55.500 回答