LANG SELRCT

Apps Script Reference  (Create: Create new Spreadsheet | Create new Apps Script

Saturday, January 27, 2018

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の値も追加して

ログに出す








参考

Latest post

Extracting data from Google Sheets with regular expressions

Introduction Regular expressions are a powerful tool that can be used to extract data from text.  In Google Sheets, regular expressions ca...