应用脚本中的多个循环

时间:2018-04-12 19:12:28

标签: javascript arrays loops google-apps-script google-slides

我正在尝试基于两个数组在幻灯片上运行替换文本功能;第一个数组是要替换的值,第二个数组是第一个数组中相应值应替换的值。

即。第一个数组中的第一个值应该替换为第二个数组中的第一个值。

这是我尝试这样做的

function myFunction() {
var currentPresentationSlide = SlidesApp.getActivePresentation().getSlides();
var array1 = ['{{remove}}','{{remove2}}','{{remove3}}'];
var array2 = ['new value','new value2','new value 3'];
for (i = 0, s = 0, x = 0; i < currentPresentationSlide.length, s < array1.length, x < array2.length; i++, s++, x++) {
currentPresentationSlide[i].replaceAllText(array1[s],array2[x])
 }
}

更令人困惑的是,replaceAllText只能在单个页面上运行而不是整个表示,因此它必须在幻灯片中的每个单独页面上作为循环运行(这是循环的原因)用i变量。

有谁知道我做错了什么,因为这对我不起作用

1 个答案:

答案 0 :(得分:2)

感谢Rup在评论中我解决了它。万一有人遇到同样的问题,这是我的解决方案:

function myFunction() {
var currentPresentationSlide = SlidesApp.getActivePresentation().getSlides();
  var array1 = ['{{remove}}','{{remove2}}','{{remove3}}'];
  var array2 = ['new value','new value 2','new value 3'];
  for (i = 0; i < currentPresentationSlide.length; i++) {
    for (s = 0; s < array1.length; s++)
currentPresentationSlide[i].replaceAllText(array1[s],array2[s])
 }
}