LANG SELRCT

コードを書く場所についてはこちら

2018年1月27日土曜日

evalを使ってみる


evalにはeval() - JavaScript | MDNにも書かれているように意図しないコードが実行されるリスクがあるため別の方法で実現するのが良さそうです

ここではどんなことができるのか試したコードを備忘録として書いておきます



コード.gs
function create_vars(){
  var words = ["abc", "ABC"];
  
  for (var i = 0; i < words.length; i++) {
    var str = "var word" + i + "=" + '"' + words[i] + '"';
    eval(str);
  }

  var result = [];
  for (var i = 0; i < words.length; i++) {
     result.push(eval("word" + i));
  }
  Logger.log(result)
}
意訳
この機能がやること
単語を入れた配列を用意して

単語の数だけ以下を繰り返す
var word0 = words[0];とvar word1 = words[1];を文字列で作って
それらをjavascriptのコードとして扱えるようにする


変数の値を入れる入れ物を用意して
単語の数だけ以下を繰り返す
resultにword0の値を追加して、 word1の値も追加して

ログに出す








参考