0
0

【GAS】文法の基礎

Posted at

Logger.logとconsole.log

Logger.log(変数)などでログを出力する。
console.log(変数)も同様。

四則演算

function myFunction() {
  Logger.log(3+100);
}

+ - * /で計算できる。

変数

function myFunction() {
  const a = 3;
  Logger.log(a)
}

constで定義した場合、変数の上書きはできない。
letで定義すると、変数の上書きが可能。
constで十分な場合は、通常constを利用する。

データ型

function myFunction() {
  const data = [1.44, 77]
  Logger.log(typeof data)
}

type of で変数の型を返す。

配列

function myFunction() {
  const data  = [[1, 2, 3, 4],
                 [5, 6, 7, 8]];
  Logger.log(data[1][2]);
}

オブジェクト

function myFunction() {
  const scores = {
    'japanese': 50,
    'english':60,
    'math':90,
    'science': 80
  };
  Logger.log(scores['english']);
  Logger.log(scores.english);
}

辞書型の変数について、scores[’english’]scores.englishなどでヴァリューを指定することができる。

比較演算子

function myFunction() {
  Logger.log(1 > 3);
}

=は代入を意味するため、等しいことを条件としたい場合は==とする

制御構文~条件分岐

function myFunction() {
  const a = 10;
  if(a<3){
    Logger.log("aは3より小さいです");
  }
  else if(a >= 3 && a <= 5){
    Logger.log("aは3以上5以下です");
  }
  else{
    Logger.log("aは5以上です")
  }
}

制御構文~反復①

let in

function myFunction(){
  const nums = [1, 2, 3, 4, 5];
  for(let i=0; i<nums.length; i++){
    Logger.log(nums[i]);
  }
}

制御構文~反復②

for in

function myFunction(){
  const nums = [1, 2, 3, 4, 5];
  for(let i in nums){
    Logger.log(i);
  }
}
function myFunction(){
  const nums = [1, 2, 3, 4, 5];
  for(let num of nums){
    Logger.log(num);
  }
}

関数

// 台形の面積を返す関数
function clacTra1(up, down, height) {
  Logger.log((up+down)*height/2);
}

function clacTra2(up, down, height) {
  return((up+down)*height/2);
}

function mainFunc() {
  Logger.log(clacTra2(10, 5, 8));
}

returnの場合、値を返すだけであり、ログは出力されない。
出力するには、returnで返される関数をLoger.log()などに噛ませる必要がある。

メソッド

オブジェクトがプロパティとして格納している関数。

配列が持つメソッド: forEach()

// メソッド
function myMethod1() {
  const usernames = ['taka' ,'rei', 'saito', 'rucas'];
  usernames.forEach(function(username ,index){
    Logger.log(index+1+'番目の'+username+'さん');
  })
}

// アロー関数で記述する場合
function myMethod2() {
  const usernames = ['taka' ,'rei', 'saito', 'rucas'];
  usernames.forEach((username ,index) => {
    Logger.log(index+1+'番目の'+username+'さん');
  })
}

// 文字列ベースで変数を組み込む記述方法
function myMethod3() {
  const usernames = ['taka' ,'rei', 'saito', 'rucas'];
  usernames.forEach((username ,index) => {
    Logger.log(`${index}番目の${username}さん`);
  })
}

// 配列に新たな要素を追加
function myMethod4() {
  const usernames = ['taka' ,'rei', 'saito', 'rucas'];
  usernames.push('mao');
  usernames.forEach((username ,index) => {
    Logger.log(`${index}番目の${username}さん`);
  })
}

for of for in の両者を担う関数。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0