ITエンジニア/デザイナ向けにオープンソースを毎日紹介

mofmof.jsはJavaScriptを積極的に拡張したライブラリで、Number/Array/Stringに便利なメソッドを追加しています。

JavaScriptは今やWebだけでなく、様々な環境で使われるようになっています。そこで基礎になりえるライブラリとして紹介したいのがmofmof.jsです。かゆい所に手が届く、便利なメソッドがたくさん追加されています。


コード例です。コピーメソッド。


日付周りの拡張も多いです。


Hashを取り扱うメソッドも多数用意されています。


二つのHashをミックスします。


Hashからキーと値を取り出します。


Hashのキーだけを抽出します。


mapメソッドです。


実行するたびにインクリメントされるユニークな値を返します。1秒間に100万回実行したとしても285年間ユニークであり続けます。


一気に配列を生成します。


文字列を置換しつつ生成します。


検索メソッド、hasです。


文字の0詰め、左詰めなどを行います。

mofmof.jsの特徴はネームスペースにmmを採用することで手首の負担を減らす癒しの心、本来のJavaScript利用法(Prototype拡張)に立ち戻りArray/String/Numberを積極的に拡張、型の比較や変換、判別を行うglobal.Typeの追加、global.Hashを追加しイテレータやmixin、プロパティ列挙やデフォルト引数補完などの機能を実装しています。

さらにテストコードやドキュメントも充実しており、ビルドツールを使うことで環境に合わせた最適なJavaScriptを生成できるようにしています。

mofmof.jsはMIT Licenseのオープンソース・ソフトウェアです。


MOONGIFTはこう見る

Prototypeを拡張すると、余計な不具合を生じやすいというイメージがあります。Prototype.jsでそれを経験した人は多いのではないでしょうか。それを受けてjQueryでは共存しやすい工夫がされていたり、拡張性も柔軟になっています。広く受け入れられるフレームワークとしてはそうあるべきでしょう。

しかしmofmof.jsのような積極的な拡張もまた面白いと感じられます。メソッドなどがRailsに近いものがあり、元々のJavaScript(Ruby)と比べると格段にパワーアップして使い勝手が良くなっています。mofmof.jsに慣れると手放せなくなるかも知れませんが、一気にmofmof.jsの世界に飛び込んでしまうというのもまたありかも知れません。

mofmof-js - mofmof mofmof - Google Project Hosting

 

MOONGIFTの関連記事

  • DevRel
  • Com2