Home > OS >  Use arrays' position as function parameters
Use arrays' position as function parameters

Time:07-16

I'm trying to pass positions of a list of arrays in a function, but I'm definitely missing something.

This is my script :

// function to display the results 
function display(array){                                 
  var source = SpreadsheetApp.openById("x");
  var sheet = source.getSheetByName('x')
  var value = sheet.getRange("G4:I4").setValue(array[x][y]) //sets the range to the value 
}

// function that creates or searches for the array
function recherche() {
  var source = SpreadsheetApp.openById("x");
  var sheet = source.getSheetByName('x')
  
  var arrays = [
    [1,2,3,4,5],
    [6,7,8,9,10]
  ]

  display(arrays[0][0]) // first time it is executed it should display arrays[0][0] or 1

  return arrays
}

// function to display the next value 
function next(){
  var source = SpreadsheetApp.openById("x");
  var sheet = source.getSheetByName('x')
  display(recherche()[x 1][0]) // should display arrays[1][0] or 6
}

Am I doing something stupid or did I just miss something?

Thx

CodePudding user response:

There are so many ways to do this:

First:

function myTest() {
  let i = 0;
  let arrays = rechershe();  // will display arrays[0][0]
  i  ;
  next(arrays,i);
}

function next(arrays,i) {
  display(arrays[i][0]);
}

Or:

function myTest() {
  let i = 0;
  let arrays = rechershe(); // will display arrays[0][0]
  i  ;
  next(arrays[i][0]);
}

function next(value) {
  display(value);
}

Or:

function myTest() {
  let i = 0;
  let arrays = recherche(); // will display arrays[0][0]
  i  ;
  function next() {
    display(arrays[i][0]);
  }
  next(); // will display arrays[1][0]
}

And still another:

function myTest() {
  let i = 0;
  let arrays = recherche();
  i  ;
  next = () => display(arrays[0][i]);
  next();
  i  ;
  next();
}

8:15:58 AM  Notice  Execution started
8:16:00 AM  Info    1
8:16:00 AM  Info    2
8:16:00 AM  Info    3
8:15:59 AM  Notice  Execution completed
  • Related