2013年2月18日月曜日

JavaScript - String.Contains メソッドの代わり


今回は、JavaScript で対象となる文字列に調べたい文字が含まれるかを調べる方法です。

C# では Contains メソッドがありますが、JavaScript には Contains メソッドがありません。代わりに indexOf() メソッドを利用します。このメソッドの引数には調べたい文字を指定します。
戻り値には引数の文字が何番目に現れるかを返します。引数の文字が含まれない場合は"-1"が返りますので、これを使って判定ができます。

function checkValue()
{
    var button = document.getElementById("abc");
    if(button.value.indexOf("C") !== -1)
    {
        // 含まれている場合
        alert("C は" + button.value.indexOf("C") + "番目です。");
    }
    if(button.value.indexOf("D") == -1)
    {
        // 含まれていない場合
        alert("D は含まれません。");
    }
}

<input id="abc" onclick="checkValue()" type="button" value="ABC" />

サンプルのダウンロードはこちらから
http://kai.raindrop.jp/javascript/contains/

String.prototype に contains メソッドを登録する方法はこちら
JavaScript - String.Contains メソッドの登録

参考:Method like String.contains() in JavaScript

0 件のコメント:

コメントを投稿