Javascript Google应用程序脚本:返回两个范围之间的唯一值数组的函数

Javascript Google应用程序脚本:返回两个范围之间的唯一值数组的函数,javascript,google-apps-script,Javascript,Google Apps Script,我试图编写一个自定义函数,当比较两个数组时,该函数将返回一个包含所有唯一值的数组。这就是我所拥有的,但它不起作用: function getUniqueCells(range1, range2) { var sheet = SpreadsheetApp.getActiveSheet(); var range1 = sheet.getRange(range1); var range2 = sheet.getRange(range2); var range1Val = ran

我试图编写一个自定义函数,当比较两个数组时,该函数将返回一个包含所有唯一值的数组。这就是我所拥有的,但它不起作用:

function getUniqueCells(range1, range2) {
  var sheet = SpreadsheetApp.getActiveSheet();
  var range1 = sheet.getRange(range1);
  var range2 = sheet.getRange(range2);    
  var range1Val = range1.getValues();    
  var range2Val = range2.getValues();  
  var uniquesArr = [];    
  for (var i = 0; i <= range1Val.length; i++) {    
    for(var u = 0; u <= range2Val.length; i++){
      if(range1Val[i] === range2Val[u]) {
        break;
      } else if((u + 1) === range2Val.length){
        uniquesArr.push(range1Val[i]);
      };
    };
  }; 
  return uniquesArr;
}
函数getUniqueCells(范围1,范围2){ var sheet=SpreadsheetApp.getActiveSheet(); var range1=sheet.getRange(range1); var range2=sheet.getRange(range2); var range1Val=range1.getValues(); var range2Val=range2.getValues(); var uniquesArr=[];
for(var i=0;i在第二个for循环中存在问题


for(var u=0;u在第二个for循环中存在问题


对于(var u=0;u,我要做的第一件事是检查返回值!
var sheet=SpreadsheetApp.getActiveSheet();
if((sheet==null)| |(sheet==undefined)){/*说一些关于这个错误的话,然后返回null或*/}
if((范围1…
所以我要做的第一件事是检查返回值!
var sheet=SpreadsheetApp.getActiveSheet();
if((sheet==null)| |(sheet==undefined)){/*说出这个错误并返回null或*/}
var range1=sheet.getRange(range1);
if((范围1…
等等