2012-08-22 11 views
6

Sto iniziando a armeggiare con script per Google Spreadsheet e ho un problema:Come testare il tipo di parametro di intervallo nello script di Google Spreadsheet?

Come verificare se il tipo di parametro di una funzione è un intervallo di celle?

mi piacerebbe fare qualcosa di simile:

if(typeof intput != "range") { 
    throw "input must be a range"; 
} 

Da esempi di Google here (centro della pagina):

if (typeof inNum != "number") { // check to make sure input is a number 
    throw "input must be a number"; // throw an exception with the error message 
} 

Quindi questo sembra essere il modo giusto per testare la tipo di una variabile. Ma non so come testare se il tipo è un intervallo di celle.

Sarebbe ancora meglio se potessi specificare se l'intervallo è di una o due dimensioni.

risposta

6

Un intervallo di celle è solo un array (array multidimensionale) Javascript ha un problema in questo modo. Le matrici sono viste come un oggetto. Quindi per prima cosa controlla se hai il tipo "oggetto" e poi potresti testare in questo modo.

if(typeof intput=="object"&&intput.length!=undefined) { 
    //input is a array 
}else{ 
    //Not a array 
} 

Testando una proprietà predefinita è possibile determinare con certezza che si dispone di un array

+0

Grazie funziona. Ho avuto modo di verificare un intervallo monodimensionale come questo: 'if (input.length! = Undefined && input [0] .length == undefined)' e sembra funzionare. – Autar

Problemi correlati