他の問い合わせ関数(Is Matrix()、Is List()、Is Scriptable()など)を使うと、特定のタイプのオブジェクトをテストできます。次の例は、Is Matrix()が真の場合に特定の計算を実行します。
a = [2 3];
b = [1, 1];
c = a * b;
If( Is Matrix( c ),
(c ^ a) / (a * b),
Print( "c is not a matrix." )
);
Is Scriptable()は、オブジェクトがスクリプト可能なものの場合に1を戻します。次の例の4つの変数は、データテーブル、列、プラットフォーム、レポートを参照します。どのオブジェクトもスクリプト可能なので、Is Scriptable()はすべての例で1を戻します。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
col = Column( "体重(ポンド)" );
plat = Bivariate( Y( :Name("体重(ポンド)") ), X( :Name("身長(インチ)") ) );
rep = Report( plat );
Show( Is Scriptable( dt ) );
Show( Is Scriptable( col ) );
Show( Is Scriptable( plat ) );
Show( Is Scriptable( rep ) );
Is Empty()は、変数に値、関数、式、またはオブジェクトへの参照があるかどうかを調べます。変数が定義されていなかったり、Empty()値を持っている場合は1を返します。それ以外の関数では、まだ値が作られていない、あるいは割り当てられていない変数を指定するとエラーが戻されます。プログラマはこういった変数を「初期化されていない変数」と呼んでいます。
If( Is Empty( dt = Current Data Table() ),
dt = Open()
);
Is Empty()関数はどの変数(グローバル変数、ローカル変数、列など)にも使用できます。
オブジェクトのタイプを識別する問い合わせ関数に、オブジェクトのタイプを識別する関数をまとめます。
Is Empty(global)
Is Empty(dt)
Is Empty(col)
|
|
Is Expr(x)
|
|
Is List(x)
|
|
Is Name(x)
|
|
Type(x)
|