使用谷歌appscript组合数组值

时间:2016-10-12 08:49:29

标签: google-apps-script

这是我的JS代码



var allArrays = new Array(['a', 'b'], ['c', 'z'], ['d', 'e', 'f']);

function getPermutation(array, prefix) {
 
    prefix = prefix || ''; 
    if (!array.length) { 
        return prefix; 
    } 

    var result = array[0].reduce(function (result, value) { 
        return result.concat(getPermutation(array.slice(1), prefix + value)); 
    }, []); 

    return result;
}

console.log(getPermutation(allArrays));




现在,当我将其转换为Google Appscript时,它似乎根本不起作用。我错过了什么?

1 个答案:

答案 0 :(得分:1)

对于启动,console.log()在GScript中不起作用,请将其替换为Logger.log()。

将它放入GScript中似乎工作正常:

function test_getPermutation() {

  var allArrays = new Array(['a', 'b'], ['c', 'z'], ['d', 'e', 'f']);

  function getPermutation(array, prefix) {

      prefix = prefix || ''; 
      if (!array.length) { 
          return prefix; 
      } 

      var result = array[0].reduce(function (result, value) { 
          return result.concat(getPermutation(array.slice(1), prefix + value)); 
      }, []); 

      return result;
  }

  Logger.log(getPermutation(allArrays)); // [16-10-12 10:27:36:400 BST] [acd, ace, acf, azd, aze, azf, bcd, bce, bcf, bzd, bze, bzf]

}