JavaScriptのnew演算子
JavaScriptで少し複雑な処理を行おうと思うとnew演算子を組み合わせて使うメソッドがたびたび登場します。よく使うものからこんなの使ったこと無いよ、というものまですこし詳しく解説してみました。
new演算子
元の設計図(内部prototypeプロパティ)を元に新たな製品(オブジェクト)を生成する演算
var obj=new ActiveXObject()
引数は(servername.typename[,location])。servername.typenameに対応するActiveXを返す。locationは省略可でネットワークコンピュータに名前をつける。一部セキュリティの問題上、ブラウザの設定によっては動作しない。っていうかIEにしかない。次のようなファイル入出力はローカルでしか動かない。
var fso=new ActiveXObject("Scripting.FileSystemObject");はファイル入出力のActiveXが代入される。
var xml=new ActiveXObject("Microsoft.XMLHttp");はIEブラウザ向けのXMLHttpRequestが代入される。
var arr=new Array()
引数は([size])又は([element0[,element1[,...[,elementN]]]])。
0個の時は要素0個の配列変数を返す。arr=[];と同じ。1個の数値の時はその数値だけ空の要素を確保された配列変数を返す。それ以外の時は引数をそのまま要素にした配列変数を返す
var flg=new Boolean()
引数は([boolValue])。boolValueを真偽判定した結果(true/false又は1/0)が代入される。引数を省略した場合はfalseが代入される。
var dat=new Date()
引数を省略した場合、現在の時間が「Mon Jan 01 2000 00:00:00 GMT+0900」という書式で代入される。引数に数値を1つとる時、数値の単位をミリ秒として「Thu Jan 01 1970 09:00:00 GMT+0900」からの時間日付が返される。引数を3つ以上の数値を取るとき、順に年、月、日、時、分、秒、ミリ秒(時以降は省略可能で省略したときは0とする)とした時間日付を返す。
Method一覧(表示/閉じる)
var err=new Error()
引数は([num[,description]])。numはmessageとして数値を取りエラーを識別するのに使い、descriptionはfileNameとして文字列を取りエラーの説明に使う。
var fnc=new Function()
引数は([arg1[,arg2,...[,argN]]],body)。bodyは関数の中で行われる処理。arg1〜argNは処理に用いられる引数。全て文字列として"(ダブルクウォート)か'(シングルクウォート)で括る。
var img=new Image()
引数は([width[,height]])と数値を最大で2つ取り、それぞれ幅width、高さheight(省略した場合は0)の画像オブジェクトを生成する。img.width,img.heightにそれぞれ格納され、img.srcで画像ファイルパスを参照・代入ができ、代入した時はその画像の読み込みを始める。
var num=new Number()
引数は([value])。valueを数値評価した結果を返す。省略した場合は0を返す。
var obj=new Object([value])
valueを要素としたオブジェクトを返す。引数を省略した場合は空の要素のオブジェクトを返す。obj={[value]}と同じ。
var xml=new XMLHttpRequest()
XMLHttpRequestを返す。IEの場合はnew ActiveXObject("Microsoft.XMLHttp")を用います。WebページでXMLHttpRequestを使用する場合はブラウザによって処理を分岐する必要があります。
history.back(-∞)