字符串格式化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 + '%';
};