Сравнение отдельных значений массива - PullRequest
0 голосов
/ 12 декабря 2018

Всякий раз, когда я пытаюсь сравнить значения массива, я получаю сообщение об ошибке: «TypeError: Невозможно прочитать свойство« 0 »из неопределенного».Как сравнить отдельные значения массива?

var source=scanner.getRange(6, 1, 140).getValues();
var osc=SpreadsheetApp.openById("some id").getSheetByName("Sheet1").getRange(2, 1,50).getValues();
for( var i=0;i<=140;i++){
for(var j=0;j<=50;j++){

  if(source[i][0]==osc[j][0]){
  scanner.getRange(i+6, 5).setValue("abc");
  }}

1 Ответ

0 голосов
/ 12 декабря 2018

Проблема:

Когда вы получите 140 строк данных, во внешнем массиве будет 140 элементов (индекс от 0 до 139).Но ваш цикл for проходит по 141 ряду от 0 до 140. source[140] будет неопределенным.И undefined не имеет [0] свойства.

Решение:

Используйте правильный индекс

Фрагмент кода:

for(var i=0;i<=139;i++){
  for(var j=0;j<50;j++){//Note missing `=`

Чтобы прочитать:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...