kb84tkhrのブログ

何を書こうか考え中です あ、あと組織とは関係ないってやつです 個人的なやつ

TiddlyWikiのソースを読む 続き3

boot.jsに戻って

nodeだったらfs、path、vmのモジュールを読み込む
fs = require("fs");みたいな書き方はちょっとおもしろい
なんでもオブジェクトだとかなんでも連想配列みたいな感じは好き

$tw.boot.log = function(str) {
    $tw.boot.logMessages = $tw.boot.logMessages || [];
    $tw.boot.logMessages.push(str);
}

そういう意味ではこういう関数定義もそうだな
これはメッセージをログしていく関数か

いくつかユーティリティ関数を定義

$tw.utils.hop : プロパティを持っているか
なぜに「hop」?

$tw.utils.isArray : 配列かどうか
$tw.utils.isDate : 日付かどうか
toStringは上書きされてなければ"[object ]"という文字列を返す
このへん一貫してcallで書いてあるなあ
これしか書き方ないのかなあ

$tw.utils.each :
オブジェクトがArrayかどうかで処理を分けてforとインデックスで回してて今どき風でない
for ... ofとかforEachとか使えそうなものもあるみたいだけど
互換性のためだろうか