2017-09-20 16 views
-1

私はスプレッドシートの操作後に平均をとって一連の値を送信する配列を持っています。 私は上記のデータと共に各行を返すようになりました。複数の配列を含む配列をgoogleスクリプトに追加する

私は2次元配列を使用することを考えました。 しかし、私はこれを実装することの明快さが少ないです。

for (var i = 0; i < spreadsheetRows.length; i++) 
{ 
    //operations done and variables updated 
    variable1= 
    variable2= 

    variablen= 
} 

var sendArray = []; 

sendArray.push(variable1); 
sendArray.push(variable2); 
sendArray.push(variable3); 
sendArray.push(variable4); 
return sendArray; 


は、今私は配列を送信したいrowFirst & rowSecondも、これらの二つのデータを持つ配列を送信する方法

for (var i = 0; i < spreadsheetRows.length; i++) 
{ 
    //first row of spreadsheet 
    rowFirst=[]; //data of first row 
    rowSecond=[]; //data of second row 

    //operations done and variables updated 
    variable1= 
    variable2= 

    variablen= 

} 
    var sendArray = []; 
    sendArray.push(variable1); 
    sendArray.push(variable2); 
    sendArray.push(variable3); 
    sendArray.push(variable4); 

    sendArray.push(rowFirst); // stuck here <--- 
    sendArray.push(rowSecond);// stuck here <---- 
    return sendArray; 
(すなわちrowFirstとrowSecond) 。私を案内してください。

出力は、あなたがpushに角括弧を使用して別の配列に配列をプッシュすることができ、あなたの即時の質問に答えるために

sendArray=[ 
    var1, 
    var2, 
    var3, 
    varn, 
    rowFirst=[num1, num2, num3,...numn] 
    rowSeocnd=[num1, num2, num3,...numn] 
] 
+0

したがって、 'sendArray'に2つの空の配列' rowFirst'と 'rowSecond'を追加しますか? – Brian

+0

@BrianBennett - 'sendArray = [ VAR1、 VAR2、VAR3 、 VARN、 rowFirst = [NUM1、NUM2、NUM3、... numn]、 rowSeocnd = [num1を、 - これは私が探していますものですnum2、num3、... numn] ] ' –

+0

このデータを関数に渡したいだけです。可能な限り提案してください –

答えて

0

を期待しました。

sendArray.push([rowFirst]); 
sendArray.push([rowSecond]); 

コメントに基づいて、オブジェクトではなく配列(here's a helpful article on the differences)を使用することができます。だから、なぜ4つの変数が何にも関連していないことを考えてみてください。彼らは何とかグループ化することができますか?これを行うにはいくつかの方法があります。単純な方法は、ドット記法を使用して変数またはデータセットをオブジェクトキーにペアリングすることです。

// declare the object and each array 
var sendObject = {} 

// from your code... 
for (var i = 0; i < spreadsheetRows.length; i++) 
{ 
    //operations done and variables updated 
    variable1= 
    variable2= 

    var rowFirst = [variable1, variable2, ...] 
} 

// Create the key in the Object and assign the array 
sendObject.rowFirst = rowFirst; 

The output would be: 

sendObject = { 
    "rowFirst": [variable1, variable2, ...] 
} 
+0

ありがとうございます。 @Brian Bennett そして、私が関数に戻ったら、 どうすれば値を分けることができますか? 'function myFunc(){ 。 。 。 return sendObject; } var CallerObj = myFunc(); CallerObj.rowFirst =? ' –

+0

ドット表記とループスルー配列を使用してオブジェクトを開くことができます。したがって、for(var i = 0; i Brian

+0

私は試してみましたが、 'Uncaught Error:スクリプトは完了しましたが、戻り値はサポートされている戻り値の型ではありません。 ' –

関連する問題