Core

CoreにはMooToolsでとてもよく使われる関数がたくさん入っています。 連想配列配列の基本的なメソッドもいくつか含まれています。

関数: $chk

値が存在する、または0かどうかを調べます。0を許可したいときに役立ちます。

構文:

$chk(item);

引数:

  1. item - (いろいろ) 調べたい要素。

戻り値:

  • (真偽値) もし渡されたオブジェクトが存在するか、0ならば、trueを返します。そうでなければ、falseを返します。

例:

function myFunction(arg){
    if($chk(arg)) alert('The object exists or is 0.');
    else alert('オブジェクトはnull、undefined、false、""のどれかです');

}

関数: $clear

タイムアウトやインターバルを消去します。関数:delay関数:periodicalと一緒に使うと役立ちます。

構文:

$clear(timer);

引数:

  1. timer - () クリアしたいsetInterval (periodical)やsetTimeout (delay)を定義しているもの。

戻り値:

  • (null)nullを返します。

例:

var myTimer = myFunction.delay(5000); //5秒待ってからmyFunctionを実行

myTimer = $clear(myTimer); //myFunctionをキャンセル

関連情報:

関数: $defined

値が定義されているかどうかをチェックします。

構文:

$defined(obj);

引数:

  1. obj - (いろいろ) 調査したいオブジェクト。

戻り値:

  • (真偽値) 渡されたオブジェクトがnullかundefinedならtrueを、その他はflaseを返します。

例:

function myFunction(arg){
    if($defined(arg)) alert('オブジェクトは定義されています。');
    else alert('オブジェクトはnullかundefinedです。');

}

関数: $arguments

渡されたインデックス(i)に応じて対応する引数を返す関数を作成します。

構文:

var argument = $arguments(i);

引数:

  1. i - () 戻り値としてほしい引数のインデックス。

戻り値:

  • (関数) 渡された引数の中から特定の引数を返す関数。

例:

var secondArgument = $arguments(1);
alert(secondArgument('a','b','c')); //"b"をアラート。

関数: $empty

空の関数、それだけです。典型的な例としては、クラスのイベントメソッドにおけるプレイスホルダーがあります。

構文:

var emptyFn = $empty;

例:

var myFunc = $empty;

関数: $lambda

渡された引数を返すということ以外はなにもしない関数を作ります。

構文:

var returnTrue = $lambda(value);

引数:

  1. value - (いろいろ) 戻り値として関数に設定したい値。

戻り値:

  • (関数) 設定した値を返す関数。

例:

myLink.addEvent('click', $lambda(false)); //リンクをクリックできないようにします。

関数: $extend

渡された一番目のオブジェクトに、二番目のオブジェクトのプロパティをすべて上書きします。

構文:

$extend(original, extended);

引数:

  1. original - (オブジェクト) 拡張したいオブジェクト。
  2. extension - (オブジェクト) オリジナルにコピーしたいプロパティを持つオブジェクト。

戻り値:

  • (オブジェクト) 渡された一番目のオブジェクトを拡張したもの。

例:

var firstObj = {
    'name': 'John',
    'lastName': 'Doe'

};
var secondObj = {
    'age': '20',
    'sex': 'male',
    'lastName': 'Dorian'

};
$extend(firstObj, secondObj);
//firstObjはこうなりました: {'name': 'John', 'lastName': 'Dorian', 'age': '20', 'sex': 'male'};

関数: $merge

オブジェクトを幾つでも合体することができ、元のオブジェクトを参照することなく再帰的に結合します。

構文:

var merged = $merge(obj1, obj2[, obj3[, ...]]);

引数:

  1. (オブジェクト) オブジェクトを幾つでも。

戻り値:

  • (オブジェクト) 渡されたオブジェクトをすべて結合してできたオブジェクト。

例:

var obj1 = {a: 0, b: 1};
var obj2 = {c: 2, d: 3};

var obj3 = {a: 4, d: 5};
var merged = $merge(obj1, obj2, obj3); //戻り値:{a: 4, b: 1, c: 2, d: 5}(obj1、obj2とobj3はそのままです)

var nestedObj1 = {a: {b: 1, c: 1}};
var nestedObj2 = {a: {b: 2}};

var nested = $merge(nestedObj1, nestedObj2); //戻り値: {a: {b: 2, c: 1}}

関数: $each

反復可能なものに対して反復処理を行います。しかし、組み込み関数のgetElementsByTagNameで呼び出されたものや、関数の引数、オブジェクトには使えません。

構文:

$each(iterable, fn[, bind]);

引数:

  1. iterable - (オブジェクト または 配列) 反復処理の可能なオブジェクトや配列。
  2. fn - (関数) それぞれの要素に対して実行したい関数。
  3. bind - (オブジェクト, オプション) 関数内でThisとして使いたいオブジェクト。もっと詳しく知りたければ、関数:bindを参照のこと。

引数: fn

構文:

fn(item, index, object)

引数:

  1. item - (いろいろ) 配列内の現在のアイテム。
  2. index - () 配列内の現在のアイテムのインデックス。オブジェクトの場合、インデックスではなく、アイテムのキーが渡される。
  3. object - (いろいろ) 実際の配列・オブジェクト。

例:

配列の例:

$each(['Sun','Mon','Tue'], function(day, index){

    alert('name:' + day + ', index: ' + index);
}); //"name: Sun, index: 0", "name: Mon, index: 1"...とアラート。

オブジェクトの例:

//"The first day of the week is Sunday", "The second day of the week is Monday"...とアラート:
$each({first: "Sunday", second: "Monday", third: "Tuesday"}, function(value, key){

    alert("The " + key + " day of the week is " + value);
});

関数: $pick

渡された引数の中で一番初めの定義済み変数か、nullを返します。

構文:

var picked = $pick(var1[, var2[, var3[, ...]]]);

引数:

  • (いろいろ) 変数を幾つでも。

戻り値:

  • (いろいろ) 定義されている最初の変数。
  • (null) 渡された変数がすべてnullかundefinedならば、nullを返す。

例:

function say(infoMessage, errorMessage){

    alert($pick(errorMessage, infoMessage, 'There was no message supplied.'));
}
say(); //"There was no message supplied."をアラート。

say("This is an info message."); //"This is an info message."をアラート。
say("This message will be ignored.", "This is the error message."); //"This is the error message."をアラート。

関数: $random

渡された2つの引数の間に収まる整数をランダムで返します。

構文:

var random = $random(min, max);

引数:

  1. min - () 最小値(自身を含む)
  2. max - () 最大値(自身を含む)

戻り値:

  • () minとmaxの間のランダムな数

例:

alert($random(5, 20)); //5と20の間のランダムな数をアラート。

関数: $splat

渡された引数が定義済みであり、なおかつ配列でなければ、配列に変換します。

構文:

var splatted = $splat(obj);

引数:

  1. obj - (いろいろ) あらゆるタイプの変数。

戻り値:

  • (array) 渡された変数が配列ならば、その配列を返します。それ以外の場合、渡された変数だけを値として持つ配列を返します。

例:

$splat('hello'); //['hello']を返します。
$splat(['a', 'b', 'c']); //['a', 'b', 'c']を返します。

関数: $time

現在時をタイムスタンプで返します。

構文:

var time = $time();

戻り値:

  • () - The current timestamp.

関数: $try

複数の関数を実行します。始めに実行できた関数の戻り値を返し、それ以降の関数は実行しません。一つも成功しなければ、nullを返します。

構文:

$try(fn[, fn, fn, fn, ...]);

引数:

  • fn - (関数) 実行したい関数。

戻り値:

  • (いろいろ) 呼び出された関数の戻り値
  • (null) すべての関数が失敗したらnullを返す。

例:

var result = $try(function(){
    return some.made.up.object;

}, function(){
    return jibberish.that.doesnt.exists;

}, function(){
    return false;
});

//結果はfalse

var failure, success;

$try(function(){
    some.made.up.object = 'something';
    success = true;

}, function(){
    failure = true;
});

if (success) alert('yey!');

関数: $type

渡された要素に一致するオブジェクトのタイプを返す。

構文:

$type(obj);

引数:

  1. obj - (オブジェクト) 調べたいオブジェクト。

戻り値:

  • 'element' - (文字列) DOM要素ノードの場合。
  • 'textnode' - (文字列) DOMテキストノードの場合。
  • 'whitespace' - (文字列) DOMホワイトスペースノードの場合。
  • 'arguments' - (文字列) 引数オブジェクトの場合。
  • 'array' - (文字列) 配列の場合。
  • 'object' - (文字列) オブジェクトの場合。
  • 'string' - (文字列) 文字列の場合。
  • 'number' - (文字列) 数の場合。
  • 'date' - (文字列) 日付の場合。
  • 'boolean' - (文字列) 真偽値の場合。
  • 'function' - (文字列) 関数の場合。
  • 'regexp' - (文字列) 正規表現の場合。
  • 'class' - (文字列) クラス(new Classで作られたものや、他のクラスの拡張)の場合。
  • 'collection' - (文字列) ネイティブのHTMLコレクションの場合。例えば、childNodes、getElementsByTagName, など。
  • 'window' - (文字列) windowオブジェクトの場合。
  • 'document' - (文字列) documentオブジェクトの場合。
  • false - (真偽値) undefined、null、NaN、あるいは、上記のどれでもない場合。

例:

var myString = 'hello';
$type(myString); //戻り値:"string".

このドキュメントはMooToolsのドキュメントを元に高橋文樹が翻訳(ちょっと改変)しました。
本家と同じく、Attribution-NonCommercial-ShareAlike 3.0ライセンスで公表されています。

トップに戻る