Javascript 应用程序脚本中的多个循环

Javascript 应用程序脚本中的多个循环,javascript,arrays,loops,google-apps-script,google-slides,Javascript,Arrays,Loops,Google Apps Script,Google Slides,我试图在基于两个数组的幻灯片上运行替换文本函数;第一个数组是要替换的值,第二个数组是第一个数组中的相应值应该替换的值 即,第一个数组中的第一个值应替换为第二个数组中的第一个值 这是我的尝试 function myFunction() { var currentPresentationSlide = SlidesApp.getActivePresentation().getSlides(); var array1 = ['{{remove}}','{{remove2}}','{{remove3}}

我试图在基于两个数组的幻灯片上运行替换文本函数;第一个数组是要替换的值,第二个数组是第一个数组中的相应值应该替换的值

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

这是我的尝试

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])
 }
}
函数myFunction(){
var currentPresentationSlide=SlidesApp.getActivePresentation().getSlides();
var array1=['{remove}','{{remove2}}','{{remove3}}'];
var array2=[‘新值’、‘新值2’、‘新值3’];
对于(i=0,s=0,x=0;i
更复杂的是,replaceAllText只在一个页面上运行,而不是在整个演示文稿上运行,因此它必须在幻灯片的每个单独页面上作为循环运行(这就是使用i变量循环的原因)


有没有人知道我做错了什么,因为这对我来说不起作用了

感谢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])
 }
}
函数myFunction(){
var currentPresentationSlide=SlidesApp.getActivePresentation().getSlides();
var array1=['{remove}','{{remove2}}','{{remove3}}'];
var array2=[‘新值’、‘新值2’、‘新值3’];
对于(i=0;i
感谢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])
 }
}
函数myFunction(){
var currentPresentationSlide=SlidesApp.getActivePresentation().getSlides();
var array1=['{remove}','{{remove2}}','{{remove3}}'];
var array2=[‘新值’、‘新值2’、‘新值3’];
对于(i=0;i
您可能需要&&条件。用逗号分隔它们将忽略前两个的答案。您还需要独立于幻灯片循环而在数组上循环,因此需要两个嵌套for循环。(即,目前您只在幻灯片1上寻找替代品1、幻灯片2上的替代品2和幻灯片3上的sub 3,然后停止。)您可以使用相同的变量为两个数组编制索引。感谢Rup-我找到了一个解决方案,因为您的答案-非常感谢!您可能想要&&条件。用逗号分隔它们将忽略前两个的答案。您还需要独立地在数组上循环,而不是在幻灯片上循环,因此您需要两个嵌套的f或者循环。(即,目前您只在幻灯片1上寻找替换1,幻灯片2上寻找替换2,幻灯片3上寻找sub 3,然后停止。)并且您可以使用相同的变量对两个数组进行索引。感谢Rup-由于您的回答,我找到了一个解决方案-非常感谢!