导出Google Spreadsheet为JSON时下划线丢失问题咨询
下划线丢失和FORMAT_PRETTY变量没有任何关系,这个变量仅用于控制JSON输出的缩进格式,删除后代码中多处引用该变量的逻辑都会报错,无需修改它。
你之前修改的判断逻辑不生效,是因为isAlnum_("_")永远返回false,所以if (!isAlnum_(letter) && !isAlnum_("_"))这个条件等价于原逻辑,还是会过滤掉下划线。
解决方案
按你的需求二选一即可:
方案1:仅保留下划线,保留原有空格转驼峰、大小写格式化逻辑
修改isAlnum_函数,把下划线加入合法字符范围,修改后代码如下:
function isAlnum_(char) { return char >= 'A' && char <= 'Z' || char >= 'a' && char <= 'z' || isDigit_(char) || char == '_'; }
方案2:完全保留表头的原始格式(包括下划线、大小写、特殊符号等,不做任何格式化处理)
直接重写normalizeHeader_函数,跳过所有格式化逻辑,仅去除前后空格即可:
function normalizeHeader_(header) { return header.trim(); }
修改完成后重新运行脚本即可导出包含原始下划线命名的JSON文件。
内容的提问来源于stack exchange,提问作者ultrapanam
相关产品推荐
相关产品推荐

