======Util====== =====概要===== 様々な関数を集めた、ユーティリティークラスです。 =====メソッド===== ====assert(conditions, msg, error)==== ''型:Undefined'' ''Static'' 指定された条件に合致しない場合、例外を発生させます。 ===パラメータ=== ^パラメータ^型^説明^ |conditions \\ ''必須''|Expression|例外を発生させる条件式です。結果がFalseの場合、例外を発生させます。| |msg \\ ''必須''|String|エラーメッセージです。| |error \\ ''デフォルト:Error'' |Error|発生させる例外です。| ===戻り値=== なし。 ---- ====concatPath(paths)==== ''型:String'' ''Static'' 引数で渡された配列中の文字列を、"/"を区切り文字として連結し、パスを作成します。各要素が"/"で始まっているか、終わっているかなどを考慮して、各単語の間に"/"が1つだけ現れるように連結します。 ===パラメータ=== ^パラメータ^型^説明^ |paths \\ ''必須''|Array of String|パスの配列です。| ===戻り値=== 連結された文字列です。 ---- ====deepClone(target)==== ''型:*'' ''Static'' 引数で渡された値をディープクローンします。 ===パラメータ=== ^パラメータ^型^説明^ |target \\ ''必須''|*|クローンする値です。| ===戻り値=== クローンされた値です。 ---- ====deepMerge(obj1, obj2)==== ''型:Object'' ''Static'' 引数のobj2を、obj1にディープマージします。obj1は書き換えられます。 ===パラメータ=== ^パラメータ^型^説明^ |obj1 \\ ''必須''|Object|マージ先のオブジェクトです。| |obj2 \\ ''必須''|Object|マージ元のオブジェクトです。| ===戻り値=== マージ後のobj1を返します。 ---- ====getClassNameFromTagName(tagName)==== ''型:String'' ''Static'' 引数で与えられたHTMLのタグ名から、クラス名を生成します。クラス名は、タグ名のハイフンの前後の単語の先頭を大文字にし、ハイフンを取り除いて連結したものです。 ===パラメータ=== ^パラメータ^型^説明^ |tagName \\ ''必須''|String|タグ名です。| ===戻り値=== クラス名です。 ---- ====getObject(target, options)==== ''型:Object'' ''Static'' 引数で指定された値を、オブジェクトに変換します。引数で渡された値がオブジェクトの場合、そのままそれを返します。 ===パラメータ=== ^パラメータ^型^説明^ |target \\ ''必須''|String|対象となる値です。| |options|Object|オプションを指定します。以下のキーがあります。| | "format"|String|"js"の場合、targetはJavascriptオブジェクトとみなします。指定がない場合はJSONとみなします。| | "bindTo"|String|formatが"js"の場合、バインドするオブジェクトを指定します。| ===戻り値=== 変換したオブジェクトです。 ---- ====getTagNameFromClassName(className)==== ''型:String'' ''Static'' 引数で与えられたクラス名から、タグ名を生成します。タグ名は、クラス名の大文字で始まる2番目の文字との間にハイフンをいれ、全てを小文字にしたものです。 ===パラメータ=== ^パラメータ^型^説明^ |className \\ ''必須''|String|クラス名です。| ===戻り値=== タグ名です。 ---- ====randomWait(max, fixed)==== ''型:Undefined'' ''非同期'' ''Static'' ランダムな時間の後に解決されるプロミスを返します。 ===パラメータ=== ^パラメータ^型^説明^ |max|Number|リゾルブされるまでの最大の時間です。ミリ秒で指定します。| |fixed|Boolean|Trueの場合、ランダムな値ではなく、maxで指定された時間後にリゾルブします。| ===戻り値=== なし。 ---- ====safeEval(code, parameters)==== ''型:*'' ''Static'' 与えられたJavascriptコードのテキストを実行し、結果を返します。strictモードで実行されます。 ===パラメータ=== ^パラメータ^型^説明^ |code \\ ''必須''|String|実行するJavascriptのコードです。| |parameters|Object|実行するコードにバインドされるパラメータです。コードの中から"this"でアクセスできます。| ===戻り値=== コードの実行結果です。 ---- ====safeGet(store, key, defaultValue)==== ''型:*'' ''Static'' 引数で与えられたオブジェクトから、keyパラメータで指定された値を返します。指定されたキーが存在しない場合defaultValueを返します。返される値が配列かオブジェクトの場合、ディープコピーされたものが返されます。 キーには、ピリオド区切りで複数の階層を指定できます。 ===パラメータ=== ^パラメータ^型^説明^ |store \\ ''必須''|Object|対象となるオブジェクトです。| |key \\ ''必須''|String|取得するキーを指定します。| |defaultValue|*|キーが存在しない場合に返す値を指定します。| ===戻り値=== 指定されたキーの値です。キーの値が見つからない場合、defalutValueパラメータが指定されていればその値、指定されてない時はUndefinedを返します。 ---- ====safeHas(store, key)==== ''型:Boolean'' ''Static'' 引数で与えられたオブジェクトに、指定されたキーが存在するかを返します。 キーには、ピリオド区切りで複数の階層を指定できます。 ===パラメータ=== ^パラメータ^型^説明^ |store \\ ''必須''|Object|対象となるオブジェクトです。| |key \\ ''必須''|String|存在を確認したいキーを指定します。| ===戻り値=== Trueなら項目を持っています。 ---- ====safeMerge(store, key, value)==== ''型:Object'' ''Static'' 引数で与えられたオブジェクトに対し、keyで指定された位置に、valueをマージします。実際のマージは[[#deepmerge_obj1_obj2|Util.deepMerge()]]によって、行われます。 キーには、ピリオド区切りで複数の階層を指定できます。 ===パラメータ=== ^パラメータ^型^説明^ |store \\ ''必須''|Object|対象となるオブジェクトです。| |key \\ ''必須''|String|マージするキーを指定します。| |value \\ ''必須''|*|マージする値を指定します。| ===戻り値=== 引数で与えられたstoreを返します。 ---- ====safeSet(store, key, value)==== ''型:Object'' ''Static'' 引数で与えられたオブジェクトの、keyパラメータで指定された項目に値をセットします。指定されたキーが存在しない場合は、自動的に作成されます。既にアイテムが存在する場合は、上書きされます。 キーには、ピリオド区切りで複数の階層を指定できます。 ===パラメータ=== ^パラメータ^型^説明^ |store \\ ''必須''|Object|対象となるオブジェクトです。| |key \\ ''必須''|String|値をセットするキーを指定します。| |value \\ ''必須''|*|セットする値を指定します。| ===戻り値=== 引数で与えられたstoreを返します。 ---- ====safeRemove(store, key)==== ''型:Object'' ''Static'' 引数で与えられたオブジェクトから、keyパラメータで指定された値を削除します。 キーには、ピリオド区切りで複数の階層を指定できます。 ===パラメータ=== ^パラメータ^型^説明^ |store \\ ''必須''|Object|対象となるオブジェクトです。| |key \\ ''必須''|String|取得するキーを指定します。| ===戻り値=== 引数で与えられたstoreを返します。 ---- ====scopedSelectorAll(rootNode, query, options)==== ''型:NodeList'' ''Static'' 引数で指定されたノード配下から、クエリーに合致するHTML要素を返します。デフォルトでは、ノード配下に別のユニットがある場合、そのユニット内は探索しません。 ===パラメータ=== ^パラメータ^型^説明^ |rootNode|HTMLElement|探索の起点となるノードです。| |query|String|検索クエリーです。document.querySelector()と同じものを使えます。| |options|Object|オプションを指定します。以下のキーがあります。| | "penetrate"|Boolean|Trueの場合、別ユニットの内部も探索します。| ===戻り値=== 見つかったHTML要素のリストを返します。 ---- ====warn(conditions, msg, level)==== ''型:Undefined'' ''Static'' 指定された条件に合致しない場合、コンソールに警告メッセージを表示します。 ===パラメータ=== ^パラメータ^型^説明^ |conditions \\ ''必須''|Expression|メッセージを表示させる条件式です。結果がFalseの場合、警告メッセージを表示します。| |msg \\ ''必須''|String|表示させるメッセージです。| |level \\ ''デフォルト:warn'' |String|メッセージのレベルです。| ===戻り値=== なし。