===, !== 演算子

この演算子は、型もチェックします。従って、値の自動変換は行われません。

<script type="text/javascript">
function test1(){
    alert( "2" === 2 )  // false
    alert( 1 === 1.0 )  // true
    alert( "1"+1 )      // "11"
    alert( "1"+1 !== 11)    // true
}
</script>

たとえば、ラジオボタンの値が改ざんされていないかなどに利用できます。

delete 演算子

delete演算子は、オブジェクトのプロパティArrayオブジェクトの要素を削除してくれます。成功すると true を返します。

配列の要素を削除した場合は、当該要素が未定義となり、全体の要素数に変化はありませんので危険を伴います。
<script type="text/javascript">
function test2(){
    var a = new Array(0,1,2,3,4);    // 5個の要素
    var o = {};            // ver 有り
    obj = new Object;    // ver 無し
    alert( a.length )    // 5
    alert( delete a[2] )    // true
    alert( a[2] )        // undefined
    alert( a.length)    // 5
    alert( delete o )    // false
    alert( delete obj )    // true
}
</script>

instanceof 演算子

オブジェクトがクラスのインスタンスであるか評価します。

<script type="text/javascript">
function test3() {
    var a = new Array(1,2,3,4,5);
    function F1 () {};
    function F2 () {};
    F2.prototype =new F1();
    alert( a instanceof Array );    // true
    alert( F1 instanceof F1);        // false
    alert( F2 instanceof F2);        // false
    var F1Obj = new F1();
    alert( F1Obj instanceof F1);    // true
    alert( F2 instanceof F1);        // false
    var F2Obj = new F2();
    alert( F2Obj instanceof F1);    // true
    alert( F2Obj instanceof F2);    // true
    
}
</script>

と書いてはみたものの、使い道がいまいち…。

そうだ、文字列チェックで使える!

var getElement = (function (argv){
  if (typeof(argv) == "string"      // argc = "test"
      || argv instanceof String)    // argv = new String("test")
    return document.getElementById(argv);
  else 
    return argv;	// チェックしないけどオブジェクトだと想像するものとする
});

typeof 演算子

けっこう使える演算子。以下の5通り+未定義1通り(undefined)の計6通りある。

  1. number
  2. string
  3. boolean
  4. object
  5. function
  6. undefined
小文字ですよ!
<script type="text/javascript">
function test4() {
    var n = 1.2;         alert(typeof n);    // number
    var s = "AugusAjax"; alert(typeof s);    // string
    var b = (1>0);       alert(typeof b);    // boolean
    var o = {};          alert(typeof o);    // object
    var f = function(){}; alert(typeof f);    // function
    alert(typeof u);    // undefined
}
</script>

void 演算子

void演算子は、FORM内で、クリック時にsubmitしたくない時によくつかられていますが、これには批判の声が多数あり筆者も推奨しない。

代替えになるかわかりませんが、こんなの書いてみました。Prototype.K(x);は、引数のxを返却する関数です。そもそもFormのaction属性のスキームにJavascriptは非推奨とされている…のだが

<form name="F1" action="javascript:Prototype.K();" />
<input type="text" name="T1" value="100" />
<input type="button" value="OK" onclick="func()" />
<input type="button" value="submit" onclick="F1.submit();" />
</form>

テスト環境

OS
Windows Vista™ Bussiness Service Pack 2
プロセッサ
Intel® Pentium® D CPU 2.80GHz
メモリ(RAM)
1.99GB
システムの種類
32ビット オペレーションシステム
HTTPサーバー
AN HTTP Deamon Version 1.42p

IT用語辞典


 GOOGLE LOGO

inserted by FC2 system