我正在为我们正在进行的一些选举制作数据转换脚本.第一部分将所有名称更改为大写,并且脚本的这部分工作正常.但是,我的脚本的第二部分有问题.有些ID会有S,S123456,有些则没有S,123456.出于我的目的,我需要所有ID在开头没有s.当我在Google中运行此脚本时,它返回“TypeError:在对象S123456中找不到函数startsWith”.有任何想法吗?谢谢!!
function convertResponseData(){ var resultsinformation = SpreadsheetApp.openById('MySheetID').getSheetByName('Election Responses'); var resultsDatarange = resultsinformation.getRange(1,1,2500,6); var resultsData = resultsDatarange.getValues(); for (var i = 0; i < resultsData.length; i++) { var row = resultsData[i]; var resultsstudentNameLower = row[1]; var resultsstudentID = row[2] var studentNameUpper = resultsstudentNameLower.toupperCase() resultsinformation.getRange(i+1,2).setValue(studentNameUpper) if (var n = resultsstudentID.startsWith("S")){ var resultsstudentIDNoS = resultsstudentID.substring(1,20); resultsinformation.getRange(i+1,3).setValue(resultsstudentIDNoS) } } }
解决方法
在google脚本中不支持startsWith().相反,你可以使用
resultsstudentID.indexOf("S") == 0
检查字符串start是否以“S”开头
function convertResponseData(){ var resultsinformation = SpreadsheetApp.openById('MySheetID').getSheetByName('Election Responses'); var resultsDatarange = resultsinformation.getRange(1,2).setValue(studentNameUpper) if (resultsstudentID.indexOf("S") == 0 ){ var resultsstudentIDNoS = resultsstudentID.substring(1,20); //You also do this resultsstudentID.substring(1) to get a substring from index 1 to end. resultsinformation.getRange(i+1,3).setValue(resultsstudentIDNoS) } } }
希望有所帮助
原文地址:https://www.jb51.cc/js/155746.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。