Javascript原型替换不起作用

时间:2014-03-16 14:02:37

标签: javascript prototype

我在这里有以下String.prototype.replace电话;

$("#"+index+"stock").html(String.prototype.replace.call(value, /(\d{3})/, "$1" + (value%100000 > 0 ? 'K+' : 'K'), 'g'));

然后显示

910K+000

如何才能显示

910K ?

原始value 917000 可能的值列表如下

156167
785853
890000
162000
//any 100thousand number 

这里是这样一个问题的JSFiddle:http://jsfiddle.net/2Q3yY/1/

1 个答案:

答案 0 :(得分:2)

为什么不简单:

function formatNumber(num) {
  var value = parseInt(num, 10);
  if (value < 1000) return value;
  if (value > 100000) {
    value = value.toString().substr(0, 3) + 'K+';
  } else {
    value = value.toString().substr(0, 3) + 'K';
  }
}

之后:

$("#"+index+"stock").html(formatNumber(value));