変数宣言の注意点
記述:2020/12/06
更新: 2021/12/12
>>前記事
■変数の宣言
以前の記事で紹介していますが、本記事でも記載しておきます。
宣言種類 宣言名 = 内容;
var glass = "オレンジジュース";
let glass = "グレープジュース";
const glass = ”リンゴジュース”;
■変数に空白を宣言する時
GASは空白を宣言する時に注意が必要です。
変数に空白を宣言する方法を以下に挙げます。
var glass
var glass = ""
var glass = ””;
上記の3つどれも変数に空白を宣言しているのですが、
GASでは一番の上の「var glass」が特に注意が必要です。
空白であればif文を実行し、
glassにオレンジジュースを代入する処理を作って検証します。
①「var glass」で宣言
var glass
if( glass == "" ){
glass = ”オレンジジュース”;
}
①の検証結果
if文は実行されず、glassにオンレジジュースは再代入されていません。
実は「var glass」と宣言すると、GASのルールに沿っていない書き方のため、
「定義されていません」という「undefined」が内容に入ってしまいます。
var glass ←この時点で「undefined」が入る
if( glass == "" ){ ←glassの内容が、空白と一致しないため実行されない
glass = ”オレンジジュース”;
}
②「var glass = ""」で宣言
var glass = ""
if( glass == "" ){
glass = ”オレンジジュース”;
}
②の検証結果
if文が実行され、glassにオレンジジュースは再代入されます。
ただし、ステートメントが終了されていないため、こちらもGASのルールに沿っていない書き方なので、同じ処理が100%実行されるとは限りません。
var glass = "" ←空白が入る。極稀に「undefined」の可能性がある
if( glass == "" ){ ←「undefined」だった場合は実行されない
glass = ”オレンジジュース”;
}
③「var glass = "";」で宣言
var glass = "";
if( glass == "" ){
glass = ”オレンジジュース”;
}
③の検証結果
if文が実行され、glassにオレンジジュースは再代入されます。
これはGASのルールに沿っており、100%実行されます。
var glass = ""; ←空白が入る
if( glass == "" ){ ←glassは「 空白」であるため実行される
glass = ”オレンジジュース”;
}
■関数とは
■参考本の紹介