TableSorter 自定义解析器
我正在尝试对“200.32 M”或“800.80 B”等值进行排序
我正在使用的当前方法不起作用。有人熟悉这个吗?
ts.addParser({
id: 'mktcap',
is: function(s) {
return false;
},
format: function(s) {
return s.replace(/M/,s+1000000).replace(/B/,s+1000000000);
},
type: "numeric"
});
I'm trying to sort values like "200.32 M" or "800.80 B"
The current method I'm using is not working out. Anyone familiar with this?
ts.addParser({
id: 'mktcap',
is: function(s) {
return false;
},
format: function(s) {
return s.replace(/M/,s+1000000).replace(/B/,s+1000000000);
},
type: "numeric"
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
s.replace(/M/,s+1000000)
看起来很奇怪。尝试用这个代替
M
(对于B
等也是如此)s.replace(/M/,s+1000000)
looks strange.try this instead for
M
(and same forB
etc.)我确信 s.replace(/M/,s+1000000) 不会达到您的预期。最好的情况是,您最终会得到一个类似“200.32 1000200.32”的字符串。我会检查 M,将其剥离,将字符串转换为数字,然后添加/乘以适当的值。像这样...
I'm sure
s.replace(/M/,s+1000000)
won't do what you expect. Best case scenario, you will end up with a string like "200.32 1000200.32". I would check for the M, strip it off, cast the string to number, and then add/multiply the appropriate value. Like this.../* 返回值: (数字)
200320000
*/
/* returned value: (Number)
200320000
*/