JavaScript, Neo-Generation
Written 2/12/00
4. 演算子
===, !== 演算子 JavaScript 1.3 JScript 1
この演算子は ==, != と違って型も一致するかどうかを調べます。 すなわち値の自動変換が行われません。
  alert("1" === 1);                 //false
  alert(1 === 1.0);                 //true
  alert("0" + 1 !== "01");          //false
 
delete JavaScript 1.2 JScript 3
delete 演算子はオブジェクトのプロパティや Array オブジェクトの要素を削除します。 成功すれば ture を返します。
  var ary = new Array(1, 2, 3, 4);
  //3番目の要素を削除
  alert(delete ary[2]);   //true
  alert(ary[1]);          //2
  alert(ary[2]);          //undefined
 
オブジェクトそのものは削除できせん。
  var i = 1;
  alert(delete i);                  //false
  
  var ary = new Array(1, 2, 3);
  alert(delete ary);                //false
 
ただし、var を使って宣言されていなければ削除できます。
  i = 1;
  alert(delete i);                  //true
  
  ary = new Array(1, 2, 3);
  alert(delete ary);                //true
 
instanceof 演算子 JScript 5
あるオブジェクトが指定したクラスのインスタンス(実体) であるかどうかを調べます。
  var  ary = new Array();
  alert(ary instanceof Array);      //true
  alert(ary instanceof Object);     //true
  alert(ary instanceof String);     //false
 
Object は Array のスーパークラスになっているということのようです。
typeof 演算子 JavaScript 1.1 JScript 1
オブジェクトのタイプを調べます。
タイプには number, string, boolean, object, function があります。 オブジェクトが定義されていない場合は undefined が返ります。
  var a = 1.2;
  alert(typeof a);                  //number
  var b = "ほえ";
  alert(typeof b);                  //string
  var c = (1 < 2);
  alert(typeof c);                  //boolean
  var d = new Array(1, 2, 3);
  alert(typeof d);                  //object
  var e = new Function("x", "y", "return x + y");
  alert(typeof e);                  //function
  alert(typeof f);                  //undefined
 
void 演算子 JavaScript 1.1 JScript 2
void を使うと、 本来値を返すところでも返さなくて済むことができます。 例えば下のリンクとテキストボックスは次のようなコードだとします。
  <FORM NAME="form1">
   <A HREF="javascript:document.form1.text1.value = 'ほえほえ'">押してね☆</A>
   <INPUT TYPE="text" NAME="text1">
  </FORM>
 
押してね☆
要するにリンクをクリックするとテキストボックスに 「ほえほえ」という文字列を入れたいんですが、 同時にこのスクリプトは「ほえほえ」という文字列を値として返すので、 それに応じてページがジャンプしてしまいます。
それを避けるために、次のように void を使います。
  <FORM NAME="form2">
   <A HREF="void(javascript:document.form2.text1.value = 'ほえほえ')">
    押してね☆</A>
   <INPUT TYPE="text" NAME="text1">
  </FORM>
 
押してね☆
void を使うと値を返さなくて済むようになるので、 ジャンプせずにテキストボックスに値が収まります。
Back