Panda Noir

JavaScript の限界を究めるブログでした。最近はいろんな分野を幅広めに書いてます。

2017-01-01から1ヶ月間の記事一覧

Node.jsでVimライクなエディタをつくる

qiita.com この記事に触発されて、ついでにNodeでコマンドラインツール作ってみたかったので始めてみました。名称はズバリ「JEdit」。 今回の記事では、実装していておもしろかったところを取り上げていこうと思います。

Riotのコンポーネント作り3日目 -日付表示

3ヶ月空けたと思ったら1週間も空けずに次を作る計画性のなさ。どうもクロパンダです。 今回は日付をフォーマットして表示してくれる要素を作りました。 <date format="yyyy/MM/dd(E)"></date>

構文解析に出てくる用語たち

構文解析はプログラマなら誰しも一度はやったことがあると思います。しかし、構文解析には独自の用語がたくさんあります。 そこで、初心者に向けて用語の解説をしたいと思います。「非終端記号って何?」「トップダウンとボトムアップはどう違うの?」と疑問に…

Riotのコンポーネント作り2日目 -アナログ時計

約3ヶ月あきました。今回はアナログ時計を作りました。 <analog-clock></analog-clock> <analog-clock hour="10" minute="10"></analog-clock> <analog-clock utc="+10:30"></analog-clock> こんな感じでつかいます。

Rollupは循環参照をうまくさばけないことがある

Rollupでは、循環参照していてもビルドしてくれます。しかし、子クラスが2つ以上になると意図した通りにビルドしてくれません。 このケースでは、ビルド自体は通るのですが、エラーが起きるコードが出力されます。ビルドは通ってしまうので、落とし穴に気づ…

無限長のイテレータに対してmapする

フィボナッチ数列イテレータなど、無限長であるイテレータに対してmapしたイテレータが欲しくなるときありますよね?ありますよね?

木構造を可視化するツールをつくりました

このように、わかりやすく任意の木構造を表示します。いくらか制限はありますが。

JavaScriptでAVL木の実装をしました

今、応用情報の勉強をしています。その中で平衡二分探索木が出てきました。応用情報を取ろうとしている人間です。平衡二分探索木のひとつやふたつ実装した経験がなければいけない、と思ったので実装してみました。 github.com

Object.keys()やReflect.ownKeys()のまとめ

オブジェクトのプロパティを取得するメソッドが Object.keys() Object.getOwnPropertyNames() Object.getOwnPropertySymbols() Reflect.ownKeys() と、4種類も存在していてややこしかったので整理しました

UnitaryJSで動的にファビコンをつくる

謹賀新年、あけましておめでとうございます。今年最初の記事は「動的にファビコンをつくる」という内容でお送りいたします。