我写了这一行,但是得到一个错误:
切片无法在那里处理。
为什么以及如何解决?
function (row) {
var r = Math.round(Object.values(row)[3] / Object.values(row)[4]);
var t = Object.values(row)[2];
var s = Math.round((t - r) / t * 100);
return '<span id="up">${s.slice(0,2)}%</span>'
}
答案 0 :(得分:1)
您的变量s
是一个数字,但是slice
函数需要一个string
。解决方案是将s
转换为字符串:
const slice = `${s}`.slice(0, 2);
修改
要显示带有n
小数的数字,可以在四舍五入之前将其乘以10^n
,然后将其除以相同的数字,将n
小数点后的内容切掉。
// display number with n decimals
const numberDisplay = (number, numberOfDecimals) => Math.round(number * Math.pow(10, numberOfDecimals)) / Math.pow(10, numberOfDecimals);
// your desired number display
const slice = numberDisplay(s, 2);