我正在使用 SheetJs 读取 Excel 文件,但问题是它正在转换长数字,例如3577888990098
指数般3.52E+12
.
这个问题并不重复,因为:
文件列可以是随机的,系统不会知道哪些是数字,哪些是字符串(按字母顺序)或两者。
那么如何摆脱这个呢?
这是我的代码:
function handleFileSelect(evt) {
var files = evt.target.files;
var i, f;
//Loop through files
for (i = 0, f = files[i]; i != files.length; ++i) {
var name = f.name;
const reader = new FileReader();
reader.onload = (evt) => {
/* Parse data */
const bstr = evt.target.result;
const wb = XLSX.read(bstr, {type:'binary'});
/* Get first worksheet */
const wsname = wb.SheetNames[0];
const ws = wb.Sheets[wsname];
/* Convert array of arrays */
const data = XLSX.utils.sheet_to_csv(ws, {header:1});
/* Update state */
console.log("DATA>>>"+data);
};
reader.readAsBinaryString(f);
}
}
仅对 Number 对象使用 toFixed() 怎么样?
var x = 3577888990098;
var y = '3577888990098';
if(typeof(x) === 'number') {
x = x.toFixed(); // it will not convert it to exponential.
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)