データ型の変換

すべてのOracle Data Relationship Managementのプロパティ定義データ型に、対応するJavaScriptの表現が存在するわけではありません。対応する表現がないものは、StringValueおよびValueが等価となり、その文字列値の解析方法を把握しておく必要があります。これらのいずれかのデータ型のプロパティ値を戻す場合は、そのデータ型の適切な文字列表現も戻す必要があります。格納されている値をプロパティの有効なデータ型に変換できない場合、値は未定義になります。

リスト・プロパティは、データ型に適切なタイプのオブジェクトを含む配列の各要素とともにArrayを戻します。たとえば、ListとマークされたDateプロパティでは、Dateオブジェクトを含むArrayが戻されます。

参照ターゲットが無効な場合、参照表にキーがない場合または参照表の値がデータ型に対して有効でない場合には、参照プロパティにより、予測されるデータ型が戻されない場合があります。たとえば、キーと値のペアの値がTESTであるのに、データ型がDateの場合、結果は未定義になります。

次に、Data Relationship Managementのデータ型を、対応するJavaScriptの表現とともに示します。

表12-4 データ型の比較

プロパティ定義データ型 JavaScriptデータ型

AscGroup

NodeObject配列

AscNode

NodeObject

AscNodes

NodeObject配列

Boolean

Boolean

Date

Date

DateTime

DateTime

Float

Number

FormatMemo

String

GlobalNode

NodeObject

Group

String配列

Hier

HierObject

Hierarchy Group

String (階層グループ名)

Hyperlink

String (URLを表します)

Integer

Number

LeafNode

LocalNodeObject

LimbNode

LocalNodeObject

ListGroup

String配列

Memo

String

MultiNode

LocalNodeObject配列

Node

LocalNodeObject

NodeProps

PropDefObject配列

Query

String (問合せ名)

Property

PropDefObject

Sort

Number

SortProp

PropDefObject

StdQuery

String (問合せ名)

String

String

Time

String

Version

String (バージョン名)

その他のJavaScriptの派生プロパティ(または別のノードの派生プロパティ)を呼び出す場合、その派生によって戻される値がすぐには文字列表現に変換されないため、複合オブジェクトでtoString()を呼び出すことによって結果が戻されるまで、(Arrayからなど、組込み変換に記載されている場合を除き)派生と遅延強制の間で複合オブジェクトを渡すことができます。