イースターエッグを見つけよう HTML編

>イースター・エッグ（Easter egg）とは、コンピュータのソフトウェア・書籍・CDなどに隠されていて、本来の機能・目的とは無関係であるメッセージや画面の総称である。ユーモアの1種とされることもある。多くの場合、企画・開発スタッフの一覧などが隠されているが、ちょっとしたゲームなどの場合もある。また、アニメーションや音楽を伴って表示されることもある。 

[イースター・エッグ (コンピュータ) - Wikipedia]

今回はいわゆるコメントアウトで構成されたAA、アスキーアートのようなものを抽出します。

# コード

全てのノードを調べて、コメントノードが連続している部分を探してみます。

```js
var findComments = function(e) {
  var comments = []
  var tmp = []
  var lineCount = 0
  var threshold = 5
  e.childNodes.forEach(c => {

    // テキストノードの改行は無視する。(テキストノードは全無視でもいいかも) (コメントノード間に入って連続判定がとれないため)
    if (c.nodeType === 3 && c.data === '\n') {
      return
    }
    
    // コメントでなければ終了 再帰処理へ
    if (c.nodeType !== 8) {

      // 規定行数以上のコメントの連続が直前にあったなら保存
      if (lineCount >= threshold) {
        comments.push(tmp.join("\n"))
      }
      
      tmp = []
      lineCount = 0
      var res = findComments(c)
      if (res.length > 0) {
        comments.push(res)
      }
      return
    }
    tmp.push(c.data)
    //lineCount++
    // 複数行コメントアウトで構成されているものと、コメント内改行で構成されているものがあるので、コメント内容をチェックする
    var rows = c.data.split("\n").length
    if (rows) {
      lineCount += rows
    } else {
      lineCount++
    }
  })

  return comments
}

console.log(findComments(document).join())
```

スクラッチパッドに走り書きなので`var`宣言だったり再帰処理周りがかなり雑。

ユーザースクリプトで常に走査して見つかればアラート通知とかにすると、自主的に探さなくてもたまに見つかって面白いかも。

# 実行例

コンソールに出力されるので、ソースコード全体を探す必要がなくなる。

![キャプチャ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62354/88f47e9e-94c3-0575-3791-ec80c1507eab.jpeg)

[竹書房クエスト](https://www.pptp.jp/)

<details>
<summary>ソース</summary>
<div>

```html

<!--@@@@@@@@@@@@@@@@@@@@8C8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@@@@ cooc: :@@@@@@@@@@@@@@@@@@@@@@o .cooo O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@@@ oooooooc. o@@@@@@@@@@@@@@@@O :oooooooc @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@@o oooooooooo:.@@@@@@@@@@@@@8  oooooooooo:C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@@.coooooooooooo: @@@@@@@@@@::coooooooooooc:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@8 coooooooooooooo . ....   coooooooooooooo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@O coooooooc.ccooo.ccoooooc.oooc:.:oooooooo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@8 cooooooooc:..::::::::::::::..:cooooooooo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@@ cooooc.:::::::c::::c::::::c::c:::.:ooooo.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@@c.oc.::::c:::::::::::c::::::::c::::::.coco@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@@O .:::::c:::.::c::::::::c:::::::::::::::.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@@8 .:::c:::: o.::::::::::::c::::c.::::::::::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@8 :::c::::::OO :::::::c::::::::.@C :::c::::: O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@@ ::::c::::: :: .:::::::::c::::: :o.:::::::::: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@@ .::::::: :.o@O.:::::::::::::::::8@8.: ::::::::.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@:.:::::::c::.@@O :::::::::::::::::8@@ :::::::c::.c@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@ ::.. c OO. .oCoc  o@@@@@@@@@@@.  coc.  O@o:..::: 8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@8.::: @@@::@@@@@@@@@c:@@@@@@@@C 8@@@@@@@@: O@@ :::.o@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@C:::::@@:C@@@@@@@@@o8oc@@@@@@O:@@@@@@@@@8@@.@@.:::.:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@c:::.o@@O@: O@@@@@o  oC@@@@@@O88 @@@@@@@. c8@@c:::: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@:::: O@@@8            O@@@@@@@O    .       C@@C.::: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@O ::: 8@@@c            c@@@@@@@:            :@@O ::c @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@.C.::::@@@@c  :      :  C@@@@@@@:  ..     .  c@@@ :::.o O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@.:8.::c:@@@@@ CCCc..:CCCc@@@@@@@@8 CCC.  .CCo @@@@.::::@O @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@c.@O.:::o@@@@@@8:CCCCCco8@@@@@@@@@@@O:oCCCCoc8@@@@@:::::8@cC@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@:.@o::::C@@@@@@@@@@@@@@@@@8@@@@@@@8@@@@@@@@@@@@@@@@c.:::O@co@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@C Oc::::C@@@@@@@@@@@@@@@@8.@@@.@@@:8@@@@@@@@@@@@@@@o.:::o@.@@@@@o    c@@@@@@@@@8C:.....::::.....:cO@@@@@@@@@@. . :@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@c :::::C@@@@@@@@@@@@@@@@@ccO.C.Oc:@@@@@@@@@@@@@@@@o.::.  :ccc..c@8888:@@@C.:oOOOOOOOOOOOOOOOOOOOOOOCc.:@@@C.8888O  .ccc: :@@@@@@@@@@@-->
<!--@@@@@@@@@@@ ::::C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@c .COOOOC.co::88888C cOOOOOOOOOOOOCOOOCOOOCOOOOOOOOOOOCc.88888O coccOOOOOc 8@@@@@@@-->
<!--@@@@@@@@@@@.c:::C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ cOOOOOCOc88888888CcOOOOOOOOOCOOOOCOCOCOOOOOOOOCOCOOOOOOOOOc88888888O:OOOOOOC c@@@@@-->
<!--@@@@@@@@@@8.::c:c@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O OOOCOOOOO.O888888cOOOOOOCC:   :COOOOOOOOOOOOOOCc..   :OOOCOOCc888888coOOOCOOOOoo@@@@-->
<!--@@@@@@@@@@O:::::c@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8 COOOOOCo:8@88888cOOOOOOC:COOcOOOOCoCOOOOOOOOOOCCOOOOoOOC:cCOOOOoC8888888.OCOOOCOc:@@@-->
<!--@@@@@@@@@@C::::::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:COOOCOCO:C888888COOCOOOC.OCc8oOOO:oOOOCOOOOOOOCC:cOCO8CcCo.OOOOOOOc888888:COOOCOOO:o@@-->
<!--@@@@@@@@@@C:::::.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ OOCOOCOOO:o@88oCOOOOOC..o@@@@OcC@@@OcOOOOOOCOCc@@@O:c@@@@8c oCOOOOOc8888oCOCOOCOOCC.@@-->
<!--@@@@@@@@@@o:::c:.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.OOCCCOOCOOOCcccoOOOOCC@@@@C.     .C@@8coOOCcC@@@8c     .C@@@cOCOOOOc.:oCOOOOCOCCCOo:@@-->
<!--@@@@@@@@@@o::::: 8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C.oOOOOOOOOC: cOOOCOCc@c  c@@@@@@@o .@@@@@@@@@C :O@@@@@@o  c@cOOCOOC. oOOOCOOOOO.CC@@@-->
<!--@@@@@@@@@@o:::::. 8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8  :c::  .:C.OOOOOOc8@oc@@@@@@@@@@@O @@@@@@@C.@@@@@@@@@@@@c@cCOOOOOC @@O..:c:..o@@@@@-->
<!--@@@@@@@@@@o:::::...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@c.:::::: : .oOCOOOCc@@c@@@@@@@@@@cc@cO@@@@@@c@@8@@@@@@@.o@c@CcCOOOOOo8@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@o::c::..:c@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.:.:::::: : .OOOOOCoC@@@@  O@@@@O   .@@@@@@@@@@  C@@@Oc    @@@:OOCOOOOc@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@o:::::: ::.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@c:: :::c:: .ccOOOOOOc@@@@:            c@@@@@@@@.            8@@:COOOCOO..o@@@@@@@@@@@@@-->
<!--@@@@@@@@@@O::c::: :c..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@o.:: :::::: CCoOOCOOOc@@@@             c@@@@@@@8             8@@ooOCOCOC:@o@@@@@@@@@@@@@-->
<!--@@@@@@@@@@O:::::: :cccc:C@@@@@@@@@@@@@@@@@@@@@@@@@@8:cccc: :::::.c@ooCOCOOOc@@@@: :8     c8c 8@@@@@@@@o O8.    C8c @@@OcOOOOOC:@@:@@@@@@@@@@@@-->
<!--@@@@@@@@@@8.::::c .ccccccc:o8OCCccccccccccccCCOOo.ccccccc:.::c::.o@CoOOOOOOc@@@@@oC88888888c@@@@8:@@@@@8cC88888Oo8@@@@O:OOOOOO:@@:@@@@@@@@@@@@-->
<!--@@@@@@@@@@C.:c::c O@@o::cccccc:o@@@@@@@@@@@@c:cccccc::o8@@.::c::.:C8cOOOOOOo@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O:OOOOOOc@C8@@@@@@@@@@@@-->
<!--@@@@@@@@: C::::::.C@@@@8.ooc:.:cc::O@@@@@:ccc:.:cco.C@@@@@.::::::@oC:OOOOOOc@@@@@@@@@@@@@@@@@.@@8.@@8O@@@@@@@@@@@@@@@@O:OCOOOOo.C@@@@@@@@@@@@@-->
<!--@@@@@@. @@@c:c:::.c@@@@@@8::ooooooooc::coooooooc:.@@@@@@@8:::::c:@@@:oOCOOCc@@@@@@@@@@@@@@@@@o:o:8cC.@@@@@@@@@@@@@@@@@OcOOCOOc@@@@@@@@@@@@@@@@-->
<!--@@@@C.@@@@@C:::.. o@@@@@@@@@@@@8@.oooocooo88@@@@@@@@@@@@@O  .::co@@@@.OOOOCc@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@cCOOOOo:@@@@@@@@@@@@@@@@-->
<!--@@@o @@@@@@@O@@@@.@@@@@@@@@@@@@@@coooooco:C@@@@@@@@@@@@@@@@@@@@@@@@@@@:OCOOoC@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8:OOOOo.@@@@@@@@@@@@@@@@@-->
<!--@@o @@@@@@@@@@@@oC@@@@@@@@@@@@@@coooooo:ooc:@@@@@@@@@@@@@@@@@Oo@@@@@@@@coCOO.c@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8 COOO:O@@@@@@@@@@@@@@@@@@-->
<!--@@ o@@@@@@@@@@@@.@@@@@@@@@@@@@@@.ooooooccoooC@@@@@@@@@@@@@@@@@Oo@@@@@@@@@::OC c c@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8: .:OC O@@@@@@@@@@@@@@@@@@@@-->
<!--@@ 8@@@@@@@@C::Cc@@@@@@@@@@@@@@ccooooooo:oooc:@@@@@@@@@@@@@@@@@C:@@@@@@@ o@8: @@@o . :C88@@@@@@@@@@@@@@@@@8Co..o@@@@O  C@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@ O@@@@@@@@@@@@O@@@@@@@@@@@@@@.oooooooocooooc:@@@@@@@@@@@@@@@@@c@@@@@.:@@@@@@@@@@@@.:ccccc:coccccco.ccccc: o@@@@@@@@@@8 O@@@@@@@@@@@@@@@@@@@@-->
<!--@@c.@@@@@@@@@@@O8@@@@@@@@@@@@@Ccooooooooo..:O@@@@@@@@@@@@@@@@@@@Co@@o:@@@@@@@@@@@@@@:coc.cccc:@@@@C:ccc.coo.8@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@-->
<!--@@@C @@@@@@@@@@C@@@@@@@@@@@@@@.ccooocoooc:@@@@@@@@@@@@@@@@@@@@@@@oO @@@@@@@@@O8@@@@@@:cooocc:c:@@oc::coooo.8@@@@@@c@@@@@@@@.o@@@@@@@@@@@@@@@@@-->
<!--@@@@8 8@@@@@@@@o@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:8@@@@8:C@Cc@@@@@@@@C.:cooocc  .cooocc.c@@@@@@@@.@@@@@@@@@ O@@@@@@@@@@@@@@@@-->
<!--@@@@@@O O@@@@@@o@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O @@@@@@@@cC@@@@@@@@@@@@@@@:ooo:o:o8@@@@@@@@@@@@@.C:8@@@@@@C:@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@C o@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O.@@@@@@@C8@@@@@@@@@@@@@@@.oooo:ccc@@@@@@@@@@@@@@.@@@@@@@@@C.@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@C  :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@@@@O:@@@@@@@@@@@@@@@ccoooo:cc @@@@@@@@@@@@@@.@@@@@@@@@cc@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@C  c:.:cC8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8Cc...ccc.@@@@o:@@@@@@@@@@@@@@@ocooooo:co.O@@@@@@@@@@@@O:@@@@@@@@::@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@OC. cccccc ccccccccccc:.........:......:.:ccccccccccccccccc .@Oo@@@@@@@@@@@@@@@@:oooooo:co.C@@@@@@@@@@@@oc@@@@@@o @@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@O cccccccccccccccccccccccc.ccccccccccccccccccccccccccccccccccccc..@@@@@@@@@@@@@@@@.coooooo:C@@@@@@@@@@@@@@@.O@@O: c@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@C ccccccccccccccccccccccccc.ccccccccccccccccccccccccccccccccccccc o@@@@@@@@@@@@@@@@8OOOOOOO8@@@@@@@@@@@@@@@8 c  c8@@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@C cccccccccccccccccccccccccccccccccccccccccccccccccccccccc:  .:ccccc.ccc:::.::::ccoooCCCCCCOCOCCCCooocc:.  .:cccc:. o@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@C ccccccccccccccccccccccccccccccccccccccccccccccccccccc: ccccccccc:ccccccccccc::cccccccccccccc.cccccccccc.ccccccccc: 8@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@c  ::..:c:ccccccccccccccccccccccccccccccccccccccccccc :ccccccccccccccccccccc:ccccccccccccccc.ccccccccccccccccccccc::@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@O @@@@@@@@o.:ccccccc: .Oc .ccccccccoc:  o8c  .:cccc:  ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc.o@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@::@@@@@@@@@@@@o 88@@@@@@@@@@@@OCCCO@@@@@@@@@@@@@@@@C o..:ccc:.:cccccccccccc:ccccccccccccccc:cccccccccccc.c:ccc:  c@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@:.@@@@@@@@@@@oc@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@: O@@@@@@8Cc  .   .o@@@: .cccccc:: .O@C. .::::.:O@@@@@@@@@o @@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@8 O@@@@@@@@@C c@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:..:8@@@@@O C@@@@oC@@@@@@@OocccC8@@@@@@@@@@@@@:.@@@@@@@@@@8 @@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@ c@@@@@@@@@8 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@c.@@@@@@c. o@@@@@@@::@@@@@@@@@@@@@@@@@@@@@@@@@@@C :coCOOCo: :@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@@. O@@@@@@@O @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8: @@@@@@@c @@@@@@@@O:   .@@@@@@@@@@@@@@@@@@@@@@@@o @@@@@@@cc@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@o .::::...cCO.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@. .::..oO@@Co@ .@@@c.cc:cccc. o@@@@@@@@@@@@@@@@@@@@o cOCo..  :@@@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@C.cccccccccccccc @@@@@@@@@@@@@@@@@@@@@@@@@@@@@c cccccccccc.c@@@8  :::c:::c:::. @@@@@@@@@@@@@@@@@@@: ccccccccc: C@@@@@@@@@@@@@@@@@@@@-->
<!--@@@@@@@@@@@@8CCoccccooCCO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@888OOOOO88@@@@@@@@@@@@@@@@@@@@@@@-->

```


</div>
</details>

# 参考

* [dom - Is it possible to get reference to comment element/block by JavaScript? - Stack Overflow](https://stackoverflow.com/questions/6027830/is-it-possible-to-get-reference-to-comment-element-block-by-javascript)
* [Node.nodeType - Web API | MDN](https://developer.mozilla.org/ja/docs/Web/API/Node/nodeType)
* [竹書房クエストのHPのコードをみたら案の定ふざけていた「Webエンジニアあるある」「気合い入れすぎ」 - Togetter](https://togetter.com/li/1293109)
* [HTMLのソースコードに隠されたアスキーアート14選！ | webまる](https://webmaru.blog/789/)

[イースター・エッグ (コンピュータ) - Wikipedia]: https://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%BC%E3%82%B9%E3%82%BF%E3%83%BC%E3%83%BB%E3%82%A8%E3%83%83%E3%82%B0_(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF)

# TODO

JSのコメントアウトやCSSのコメントアウトも取得できればいいが、アイデアがないです。
正規表現で泥臭く抜き出す以外にあるかな？
`/(\/\/\s?.*)|(\/\*.*\*\/)/`