ぱすたけ日記

日記っぽいのを書きます。

Chrome Devtoolのmonitorを使うと関数の呼び出しを観察できて便利

を読んで思い出したのでご紹介です。

元の記事と同様に以下の関数 sum について、

function sum(nums, acc = 0) {
  console.log({ nums, acc });
  if (nums.length === 0) return 0;
  if (nums.length === 1) return nums[0];
  return sum(nums.slice(1), acc + nums[0]);
}

この関数sumの引数 (numsacc) の呼び出しごとの変化を見たい場合は、所謂プリントデバッグdebugger を使うのは一般的なテクニックとしてよく知られていますが、このような関数呼び出し時の引数を知りたい場合はmonitor(function)という関数を使うことで同様の効果を得ることが出来ます。

この場合は monitor(sum)とした後に、関数を呼び出すことでconsoleに出力されます。

出力が toString() された結果なので、配列が対象だと若干ややこしいですが、シュッと出せて便利です。

ちなみに unmonitor(function)で出力を止められます。

こちらも是非ご利用ください。

追記 (2021/05/03 13:10)

元の sum を持ってきた結果、console.logが入っていて純粋な結果になっていないように見えたので、console.logを取り除いたものを以下に掲載しておきます。

function sum(nums, acc = 0) {
  if (nums.length === 0) return 0;
  if (nums.length === 1) return nums[0];
  return sum(nums.slice(1), acc + nums[0]);
}

また、ブコメで質問のあったスコープに閉じている関数をmonitor出来るのかという点ですが、

Chrome Devtoolのmonitorを使うと関数の呼び出しを観察できて便利 - ぱすたけ日記

これってグローバルに見えない(?)関数でもモニタできるんですか?

2021/05/03 10:30

手元で試してみたところ、スコープに閉じていても monitorに渡してさえいれば、出力できました。

一方でこの過程で気付いたのですが、 arrow functionで変数に代入しているものはmonitorに渡しても動作しなさそうです。(この件について追記2として追記をしました)

追記2 (2021/05/07 22:10)

arrow functionで変数に代入しているものはmonitorに渡しても動作しなさそうという件ですが、これはChromiumのバグなのではと思った*1のでissueを起票しました。

分かったことというか考えるとまぁそうかという感じなんですが、monitor() はJSの argumentsを利用しているようで、arrow functionでは arguments は無いのでエラーになり、その結果出力が表示されなかったようです。

そのエラーの修正の変更が作成されて、Chromiumに取り込まれました。この変更以降のChromiumではarrow functionでも呼ばれたことは表示されるようになります。

引き続きですが、arrow functionを用いた場合、引数に関しては表示されません。何故かというと前述の通りargumentsを使っている関係上、arguments がない arrow function で引数の情報を得るのは難しいので、今のところ出力するのも同様に難しいという感じです。なので、monitor()を利用する際は arrow functionを避けると良さそうです。

追記 2.5 (2021/05/08 22:00)

Chrome Canaryで確認したところ修正されていました

*1:まぁ多分仕様かなんかでwon't fixになるかと思っていた

2021年GW 3日目日記

朝から風が強かったですね。

今日は元々はサンガスタジアムに京都-愛媛戦を観に行く予定だったけど、緊急事態宣言が京都府に出ているということでリモートマッチ(無観客試合)になったので家でDAZNで観た。相手の愛媛は先日の監督交代で昨シーズンに京都で監督をしていた實好さんだったので、直接観たかったな…そして、實好さんは相変わらずインタビューが下手だった…というか、この対比も相まってやっぱり曺監督はメッセージがはっきり伝わってくる。

前半の終了後に風から雷雨に変わったなと思っていたら、亀岡もそうだったようで約1時間の中断。その間に裏でやってた1位新潟が勝ってることを確認したり、2位琉球のキックオフを観たりしたけど、相模原も雷雨だったようで開始後結構すぐに中断していた。

ハーフタイム中にPL-A500Sを譲ってもらうイベントがあったので、中断時間を利用して再生テストをやってみた。

レコードの再生、仕組みは知ってたけどやっぱり自分で操作して再生してみるとこの素朴な仕組みでちゃんとした音が鳴って本当に凄いなという気持ちになりますね。

そんなこんなしていたら後半が始まった。結果は宮吉が3試合連続のゴールなどで3-2で勝って8年ぶりの6連勝!!最近の試合も含めて後半のラストはクローズちゃんと出来てたので、前半のラストで点を取られたのは痛かったけど、ちゃんと勝てて一安心。

横断幕の作成も曺監督のアイデアだったようで、前節の無人のアウェイゲーム裏への挨拶などこういうのをやってくれるのは嬉しい。

次は5月5日に琉球のホームで2位と3位直接対決。今は勝ち点差3で得失点差は0なので、勝ちさえすれば順位逆転というカード。緊急事態宣言さえ出てなければバカンスがてら沖縄に行きたかったが……(それを言うと前節の山口も宇部新川駅観光ついでに行きたかった…)

そのあとは琉球が5-1で相模原に勝つ様子を見届けた。

なんかテレビやってないかな〜と思ってザッピングしてたらWOWOW明石家さんまチャンピオンズリーグ決勝を振り返る特番をやっていたので観る。もう来週は準決勝2nd legで月末には決勝なので気合い入れて早起きしないとな〜。

と、今日はサッカーを観ていたら1日が終わりました。このあと23時からは友人たちにSlackで解説してもらいながらF1を観る予定。

今日の1冊

レトロな絵柄とレトロなギャグ演出それにSFな設定と盛りだくさんで読み応えはすごい良かった。一方で、ストーリアダッシュで連載中なのだけど、2020年末から更新されていなくて、さらにこの1巻も2017年1月末のまんがライフSTORIAの開始から4年掛かっての単行本なので、2巻が気になっている身からすると次が読めるのはいつなのかという不安がある…

2021年GW 2日目日記

今日は祝日と土日の間ということで有給を取っている人も多かったけど、休んだところでマンガを読むくらいしかやることがないので、それならばと思って「ちょっとやったら倒せるが手を出せてないこと」を倒そうと仕事をした。他の人々はほとんどが有給を取っていたので、ミーティングやメンションなども無くこういう作業をするには良かった。

最近四条堀川に出来たお店がちょっと良いパスタとかを出しているなと思っていたら、元Sketch.の人のお店であることが緊急事態宣言中に例のカルボナーラを出すという話題で発覚したので、

14時の開店を待って行ってみるも失敗した…

次は事前に電話してみようと思う。遅めのお昼ごはんに一緒に行く人募集してます。

失敗したので、煌力でレモン担々麺を食べた。

f:id:Pasta-K:20210430214955j:plain

夜はうみねこコトに立ち寄って、ビールを3つくらい買った。「久しぶりですね〜」「また宣言明けたら来ますね〜」という会話をした。

今日の1冊

ダーツ、以前は飲みに行った後に半年に1回くらいラウンドワンでやったりしてたけど、このマンガを読んで投げ方とかを学んだ。ちょっと興味が出てきたので、もう少し活動可能になったら調査したい気もしている。マンガ自体も面白いんだけど、こういう部活設立を目指すやつ、このペースで集めていくと3巻くらいで俺たたエンドになりそうでいつもビクビクする。頑張って欲しいので、みなさんも買って読んで応援してください。

ダーツと似た(?)印象のスポーツということでこれも貼っておきます。こっちは巻末のプロ紹介などなどがめっちゃ細かくて、へ〜ってなる。

2021年GW 1日目日記

朝は11時前くらいに起きた。テレビを点けたら『プロフェッショナル 仕事の流儀サンドウィッチマンスペシャル」』のラスト30分くらいをやってたので観た。サンドウィッチマンはとにかく2人とも良い人で且つお互いがお互いを好きでリスペクトしているというのが伝わってくるのが好き。

全部観たかったな〜と思っていたけど、こちらも未公開スペシャルやるっぽいので、楽しみ。

そのあとはお昼ごはんを食べて、昨日ダウンロードだけはしていた『スーパー野田ゲーPARTY』を遊んだ。

『将棋II』はコマがランダムで選ぶと移動可能先が出てそれで移動するしかないとか、王がお互いにどれか分からないとか、移動先が盤外だったら除外されるとか、盤外に出れるのでダイレクトアタック出来るとかでとにかく奇抜でスゴい。相手の駒をとにかく取っていくといつか勝てるが油断するとというか突然負ける。理不尽さがスゴい。

元のゲームをアレンジという点では『凄六』も良かった。ゴールまで1兆マスもあるすごろくゲームで、マスのイベントで数億マス進んだり数万マス戻るみたいなのがドンドン出てくる。サイコロを増やせるカードを使うとサイコロが増えて、例えば8個増やすとそれが横に並んで9桁進めたりするようになる。このカードは重ねられるので、8個増やすカードに2個増やすカードを重ねて11桁進んだりも出来る。カードはこの他にも相手のカードを捨てさせたり、相手が進むのをそこで止められたりするカードがある。2人の対戦方式だけど順番ではないので、相手の画面を見ながら良いタイミングでカードを発動させる「スピード」的な要素もあって、それが結構コンピュータ相手でも白熱した。多分友だちとやるとめっちゃ盛り上がると思うのでやりたい。

個人的にはあとは『スーパー ブロックくずして』とかも好き。『まぁまぁ あぶないじゃん』も良かったけど微妙に当たり判定が甘い気がした。

イロモノだろ〜と思っていて実際イロモノだけど、しっかり遊べるゲーム性がそれぞれにあって、これを1000円で遊べるのはお得だな〜と思った。

そうしていたら15時になったので、名古屋vs川崎のJ1の1位2位対決を観た。川崎がとにかく強すぎる。名古屋はマッシモ監督が体調不良で欠席というのもあったけど、なかなかテンポを掴めなくて厳しそうだったなぁ。この対決カードで序盤で2点先制みたいなのは辛い。GW中に同じカードでもう1戦あるの壮絶な感じで楽しみ。次は名古屋も頑張ってほしい。

セールで半額くらいになっていたので、ついに『監督不行届』を読んだ。

監督不行届 (FEEL COMICS)

監督不行届 (FEEL COMICS)

夕飯を食べて、『プロフェッショナル』の庵野秀明の再編集拡大版『BS1スペシャル「さようなら全てのエヴァンゲリオン庵野秀明の1214日〜」』を観た。

結局なんで間に合ったんですかね……

今日の1冊

ドタバタコメディかと思いきや子育てものに通じるような描写もあって、一切退屈することの無い1巻で凄い良かった。

ちなみに5月に2巻が出ます

エヴァンゲリオンが完結した日の思い出

エヴァに触れたのは新劇場版が上映され始める少し前くらいなので、新劇場版が始まったときから考えても13年、人生の約半分かけて向き合っていた『エヴァンゲリオン』が『シン・エヴァンゲリオン劇場版:||』で完結した。

土曜日の夜にヱヴァQを見直しパンフレットなどを読み直し、意識を高めて半休を取り、前日の夜からWi-Fiとモバイルデータ通信をオフにしてネタバレ対策をして『シン・エヴァ』を迎えた。まずはこの日のことを記録しておきたいと思ったので以下、自分であれこれ考えたりとか考察読んだりする前のファーストインプレッションでの感想っぽい箇条書きです。写真のあとにネタバレあります。

f:id:Pasta-K:20210309013626j:plain

f:id:Pasta-K:20210309013723j:plain

f:id:Pasta-K:20210309013744j:plain

  • まずはとにかく終わってくれてよかった。始まる前は「(10時過ぎの回を観る予定だったので、)先に終わった人たちの出てくる人たちの表情すらも観たくないというくらいネタバレに触れずに観たいと思っているけど、一方で『エヴァ』を観て笑顔で映画館出てくるわけないよな〜」と思っていたけど、こんなにしっかり落とし前をつけてくれて、自分は終わった瞬間に凄く晴れやかな気持ちだった。
    • 「ネオンジェネシス」と言った瞬間に「残酷な天使のテーゼ」流れて1話始まったらどうしようとか、白い砂浜とか原画とかになった時にドキッとしたけど、本当にちゃんと終わって凄かった
    • めっちゃ良かったので、「めっちゃ良かった」という素直な感想だけがずっと出てきて、他のなんか細かなこと忘れつつある
    • 旧劇でもこういう親子の話がしっかり描かれるべきだったんだろうと思うけど、20年前の庵野さんにはそれが出来なかったが、時間が経ち色んなものが精算された結果、しっかりと親子の対峙とそれぞれのチルドレンの未来、ゲンドウの吐露がされたのは良かった。本当に良かった。
  • レイが泥にまみれて農業をやるシーンをエヴァで観るとは思わなかったけど、そういう素朴な交流みたいなの今まであんまりなかったので、そういうのを通して心境を変化させるのは良いなと思った
  • この前、旧劇や新劇場版を映画館で見直していたときから薄々感じていたが、ケンスケとアスカの関係性が見えた時に、ケンスケにアスカ盗られたみたいな気持ちにめっちゃなって、そこが観てて一番辛い気持ちだったので、自分がアスカ好きだったことに気付かされた……
  • 1号機と13号機の戦闘シーン、いきなりめっちゃ3DCGになって「このシーンのためにBlenderに寄付がなされたんだなぁ」と実感できて良かった
  • ちゃんと摩砂雪に仕事があったかどうかを心配してエンドロール見てたけど、ちゃんとあって良かった -- やっぱりシンゴジラで得たプレヴィズを主に担当してたんだな〜ってなった
  • Qがちゃんと昇華されて、「Qめっちゃ良かった」ってなったのすごいことだと思う。一昨日の自分に言っても信じないと思う
  • コロナが落ち着いたら宇部新川行きたい
  • アスカがシンジにレーション食わすシーンでいきなりルック変わったのビックリした
    • あのシーンどういう表現方法であーなったのか確認したい
  • 東宝のスタジオみたいなところが出てきてメタっぽくなったりするのはサービスシーンだなと思った
  • 「ヤマト作戦」は流石にそのまま過ぎではと笑いそうになった
  • レイに挨拶などを教えるのが委員長というのも、これまでのテレビシリーズから新劇場版を振り返るようで良かった。あの場面で中学の同級生たちがそれぞれチルドレンと向き合うのは最高

以下は疑問シリーズだけど、まぁこの辺は追々設定資料集とかで分かりそう

  • アスカが自身をシキナミシリーズの作られた存在だと認識したのはいつだったのか?と思ったけど、多分14年前にNERVから反旗を翻すときに加持辺りからそういう説明をされた?
  • 加持が話していたのはずっと渚カヲルだったのは分かったが、2人が繋がったのはいつ?
  • マリもが14歳の体に囚われていたのは?大学生だったのでは?というかゲンドウと同い年くらいでは?
    • (2021/03/10追記)漫画版を読み直したら、そういえばマリは2年飛び級しているから16歳という話があったのを思い出した。14歳ではなくてそれくらいということ?

しっかり終わってくれてありがとう、エヴァンゲリオン。ありがとう、庵野秀明