如何设置电子表格单元格的整数数组?

时间:2016-09-02 13:00:32

标签: javascript google-apps-script

我正在尝试使用Google Script将数组中的某些值添加到单元格中,但是添加了额外的,并且最后一个数字是错误的...

这是我的代码:

var array = [36776, 37245, 45948, 48877];
ss.getRange(5,11).setValue(array.join());

该单元格的内容为36,776,372,454,594,800,00,而不是36776, 37245, 45948, 48877

1 个答案:

答案 0 :(得分:1)

正在发生的事情是由于javascript使用的双精度浮点类型。

当你加入这些数字并输入一个单元格时,我猜google spread Sheet正在考虑这个字符串(只包含数字和逗号)一个数字并将此字符串转换为数字。在这一点上,这就是发生的事情:Large numbers erroneously rounded in Javascript

如果你想保留它,你可以添加一些不应该在数字常规中的非数字值,即添加引号" 36776,37245,45948,48877"

sheet.getRange(5,11).setValue('"' + array.join() + '"');

或完全删除逗号以防止数字自动舍入。

sheet.getRange(5,11).setValue(array.join().replace(/,/g, ""));