如何将值与逗号居中对齐

How to center align a value with a comma

所有值都像数字一样居中对齐,但是带有逗号的值左对齐我如何才能最初将这些值与逗号居中对齐。

contentHtml += "<td rowspan1=\"" 
  +   1 
  + "\" class=\"" 
  + (rowspan !== "" && rowspan > 1 ? "groups" : "") 
  + " " 
  + (!isNaN(value) || (!isNaN(value.toString().substr(1, value.length)) || value == "N/A" || value.length < 7 && value.toString().substr(value.length - 1) == '%' && value.length == ',') ? "text-center" : "text-left") 
  + "\">"
  + value 
  + (!isNaN(value) ? preFix : "") + color + (!isNaN(value) ? postFix : "") + "</td>"

我认为您要使用的是 indexOf()。像这样:

value.toString().indexOf(',')

这将 return 一个整数。如果 , 在字符串中,它将 return 从 0 到其他数字的索引值。如果字符串中不存在该字符,它将 return -1。

示例:

var value = "1,965";
var index = value.indexOf(",");
console.log(index);

这将导致 index 为 1。

在您的脚本中,这可能如下所示:

+ (!isNaN(value) || (!isNaN(value.toString().substr(1, value.length)) || value == "N/A" || value.length < 7 && value.toString().substr(value.length - 1) == '%' || value.toString().indexOf(',') > 0) ? "text-center" : "text-left")

我怀疑你可以放弃整个位。您希望 5671,964 显示居中,如果您从测试中删除该条件,它将居中。

我会测试两种方式看看。