命令
 
NE3 NE4 NE6 IE3 IE4 IE5 IE6 i
 オブジェクトの省略 
with

"with"オブジェクトを省略するためのものなんだ。
プログラムでいろいろなオブジェクトを扱っている中で、中には1つのオブジェクトに対してたくさんの操作をしなくてはいけなくなって、何行にもわたって1つのオブジェクトを扱う場合があるんだ。
そんなときには、

    obj.num;
    obj.color;
    obj.length;
        ・
        ・

このように普通は全てに対してオブジェクト(obj)を指定しないといけないよね。
そこで、はじめに対象のオブジェクトを指定してしまえば、あとは命令を行うだけでいいんだ。
それが、今回やる"with"という命令なんだ。
じゃあ、サンプルを見てみよう。

SOURCE
<HTML>
<HEAD>
<TITLE>オブジェクトの省略</TITLE>
</HEAD>
<BODY>
</BODY>
<SCRIPT language="JavaScript">
<!--

//関数
function myObj(){
  this.color = "red";
  this.name = "赤";
}

//オブジェクトを作る
obj = new myObj();
//オブジェクトにアクセス
with(obj){
  document.write(color+" = "+name);      //←@
}

//-->
</SCRIPT>
</HTML>

このプログラムの@では、通常は省略できないオブジェクトを省略しているんだね。

    document.write(obj.color+" = "+obj.name);
                        ↓
    document.write(color+" = "+name);

これは、

    with(obj)

の部分で「これから扱う命令は全て"obj"に関する命令ですよ」ということを言っているんだ。
このプログラムは”オブジェクト自身”のサンプルプログラムと全く同じなので、比較してみてみよう。

 RESULT

 


リファレンス目次