为什么比较运算符没有在Google App Script中找到匹配项?

时间:2018-01-18 17:39:41

标签: javascript google-apps-script comparison-operators

我有一个小函数,它接受一个字符串(strOrder = 658492-1),将它拆分为' - '之前的第一部分,并将其与电子表格中单元格中的值(也是拆分)进行比较。如果匹配,则应将电子表格行添加到数组中。不幸的是,它没有找到任何匹配,但即使是日志显示它们也是相同的。救命啊!

  function getLinks2(strOrder) {
  var mLinks = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Main');
  var data = mLinks.getDataRange().getValues();
  var boxOrder = '';
  var shortOrder = '';
  var sOrder = '';
  var arrLinks = [];

  data.shift();

  strOrder = strOrder.replace(/\s/g, "");
  var oTemp = strOrder.split('-');
  boxOrder = oTemp[0];

  Logger.log('boxOrder:x' + boxOrder + 'x');

  for (var i = 0; i < data.length; i++) {
    shortOrder = data[i][4].toString();
    shortOrder = shortOrder.replace(/\s/g, "");
    var soTemp = shortOrder.split('-');
    sOrder = soTemp[0];

    Logger.log('sOrder:x' + sOrder + 'x');

    if (boxOrder == sOrder) {
      Logger.log('match');
      arrLinks.push(data[i]);
      //the item matches the order id
    } else {
      //item does not match the order id
    } // end if order id matches
  } // end for loop through data
  return arrLinks;
} // end function getLinks2

以下是日志结果:

boxOrder:x685492x
sOrder:x658492x
sOrder:x658492x
sOrder:x658492x
sOrder:x699249x
sOrder:x698406x

(我在字符串周围使用'x'来检查是否有额外的空格。)

我错过了什么?

感谢您的帮助!

0 个答案:

没有答案