Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
字符串格式化Javascript?_Javascript_Ajax_Arrays_String Formatting - Fatal编程技术网

字符串格式化Javascript?

字符串格式化Javascript?,javascript,ajax,arrays,string-formatting,Javascript,Ajax,Arrays,String Formatting,我有一个显示日期和转换的数组。我想在转换后添加+“%”,但我无法使其工作。我知道我使用的是一个数组,我不能在任何地方添加它。在转换率之后添加+“%”的好方法是什么 function (data) { var tdata = new google.visualization.DataTable(); tdata.addColumn('date', 'Date'); tdata.addColumn('number', 'Conversion'); for (var

我有一个显示日期和转换的数组。我想在转换后添加+“%”,但我无法使其工作。我知道我使用的是一个数组,我不能在任何地方添加它。在转换率之后添加+“%”的好方法是什么

function (data) {
    var tdata = new google.visualization.DataTable();

    tdata.addColumn('date', 'Date');
    tdata.addColumn('number', 'Conversion');

    for (var i = 0; i < data.length; i++) {
        var dateStr = data[i].Date.substr(0, 4) + "-" + data[i].Date.substr(4, 2) + "-" + data[i].Date.substr(6, 2);
        tdata.addRow([new Date(dateStr), Number(data[i].ConversionRate)]);
    }
}
功能(数据){
var tdata=new google.visualization.DataTable();
tdata.addColumn('date','date');
tdata.addColumn('number','Conversion');
对于(变量i=0;i
这可能会起作用:

tdata.addRow([new Date(dateStr), Number(data[i].ConversionRate) + "%"]);
但您可能必须替换:

tdata.addColumn('number', 'Conversion');
与:


或者,更好的选择是使用
格式化程序

var formatter = new google.visualization.NumberFormat({suffix: '%'});
formatter.format(tdata, 0);

扩展javascript的
字符串
对象

像这样:

String.prototype.withPct = function(){
  return this + '%';
};
然后像这样使用它:

var pct = '9';
var withPercent = pct.withPct();
withPercent
将是:
'9%'

但看起来您可能想要扩展数字,在这种情况下,您将:

Number.prototype.withPct = function(){
  return this + '%';
};

你有没有看过(我没有使用这个库的经验-谷歌快速搜索发现了这一点)谢谢,我尝试了你的第一个建议。这就是为什么我觉得很奇怪。当im使用谷歌图表显示数据时,更改为字符串会出现一些错误。我已经在别的地方做过了way@KristofferAndersson:你试过我的第二个建议了吗?对不起,我太粗鲁了。你也没有描述如何将这个解决方案应用到实际问题中。。。实际上,我说的“然后像这样使用它”描述了如何应用它。而且,这不是一个坏习惯。。。完全这就是原型/原型继承词的用法。所有对象文字都是通过object.prototype创建的。这不是一个措辞或解释得最好的问题,但它显然是关于使用
google.visualization.DataTable
。您的答案需要解释如何使用代码在屏幕上呈现数据表。
Number.prototype.withPct = function(){
  return this + '%';
};