Javascript 将每个字符显示为数组的映射函数

Javascript 将每个字符显示为数组的映射函数,javascript,arrays,google-apps-script,google-workspace,Javascript,Arrays,Google Apps Script,Google Workspace,我在一个数组中有一些字符串,其形式为退出调查[hr.exitinterview]、证书[hr.Certificate]、推荐信[hr.Recommension],我只需要从现有字符串中提取hr.exitinterview、hr.Certificate、hr.Recommension,然后添加另一个字符串,并将它们作为数组返回给另一个函数。我尝试过使用substring,并且能够提取[]之间的数据,但是当我尝试用https://somelink/使用映射功能,即使我能够附加它,它也会将每个字符显示

我在一个数组中有一些字符串,其形式为退出调查[hr.exitinterview]、证书[hr.Certificate]、推荐信[hr.Recommension],我只需要从现有字符串中提取hr.exitinterview、hr.Certificate、hr.Recommension,然后添加另一个字符串,并将它们作为数组返回给另一个函数。我尝试过使用substring,并且能够提取
[]
之间的数据,但是当我尝试用
https://somelink/
使用
映射
功能,即使我能够附加它,它也会将每个字符显示为数组的单独内容,即
[h、t、t、t、t、t、p、s,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,本人本人,本人,本人,本人,k,k,k,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,(或者,或者,r,r,r,r,r,r,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,若若若若若o,n]
。而不是
[https://somelink/hr.exitinterview, https://somelink/hr.certificate, https://somelink/hr.recommendation]
我可以知道代码有什么问题吗,我还在学习JS,如果这是个愚蠢的问题,请忽略

var sheet = SpreadsheetApp.getActive().getSheetByName("Form Responses 2");
var data = sheet.getDataRange().getValues();
var currentTime = new Date();
Logger.log('currentTime:'+ currentTime);
for (var i = 1; i < data.length; i++) {
    var checkbox = data[i][7];
    var links = extract(checkbox);
    Logger.log('New links: ' + links);
  }
}

function extract(data) {
  var lengthOfData = [ data.length];
  if (lengthOfData > 0) {
    var fullLink = extractLinks(data);
  }
  if (fullLink.length > 0) {
    return fullLink;
  }
  else {
    return -1;
  }
  return -1;
}

function extractLinks(link) {
  var extractedLinks = [];
  var fullLink = [];
  for (var i = 0; i < link.length; i++) {
    link[i] = JSON.stringify(link[i]);
    extractedLinks.push(link[i].substring(link[i].lastIndexOf("[")+1,link[i].lastIndexOf("]")));
    fullLink = extractedLinks.map(function(a) { return "https://somelink/" + a; }).join(", ");
    Logger.log('fullLink: ' + fullLink);
  }
  return (fullLink);
}
var sheet=SpreadsheetApp.getActive().getSheetByName(“表单响应2”);
var data=sheet.getDataRange().getValues();
var currentTime=新日期();
Logger.log('currentTime:'+currentTime);
对于(变量i=1;i0){
var fullLink=提取链接(数据);
}
如果(fullLink.length>0){
返回完整链接;
}
否则{
返回-1;
}
返回-1;
}
函数提取链接(链接){
var extractedLinks=[];
var-fullLink=[];
对于(变量i=0;i
函数extractLinks中的循环应在“fullLink=…”之前关闭

此外,您还可以使用正则表达式匹配括号之间的字符串(但这取决于味道。最后,最终的
.join(“,”)
使函数返回字符串,而不是数组

下面修改的函数适用于我,并返回一个字符串数组

函数提取链接(链接){
var extractedLinks=[];
var-fullLink=[];
对于(变量i=0;i}
复选框包含哪些内容?
lengthOfData
将始终大于0(您分配一个元素数组)。“fullLink”将始终大于0。复选框包含退出调查[hr.exitinterview]、证书[hr.Certificate]、推荐信[hr.Recommension]