パッケージ | flash.utils |
クラス | public dynamic class Dictionary |
継承 | Dictionary Object |
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
===
)を使用できます。オブジェクトがキーとして使用されている場合は、オブジェクトの識別子を使用してオブジェクトを検索し、オブジェクトの toString()
を呼び出して返される値は使用されません。
注意: QName オブジェクトを Dictionary キーとして使用することはできません。
次のステートメントは、Dictionary オブジェクトと Key オブジェクトの関係を示します。
var dict = new Dictionary(); var obj = new Object(); var key:Object = new Object(); key.toString = function() { return "key" } dict[key] = "Letters"; obj["key"] = "Letters"; dict[key] == "Letters"; // true obj["key"] == "Letters"; // true obj[key] == "Letters"; // true because key == "key" is true b/c key.toString == "key" dict["key"] == "Letters"; // false because "key" === key is false delete dict[key]; //removes the key
関連する API エレメント
メソッド | 定義元 | ||
---|---|---|---|
Dictionary(weakKeys:Boolean = false)
新しい Dictionary オブジェクトを作成します。 | Dictionary | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
Dictionary オブジェクトの値の JSON エンコーディングをカスタマイズするためのオーバーライド可能なメソッドです。 | Dictionary | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object |
Dictionary | () | コンストラクター |
public function Dictionary(weakKeys:Boolean = false)
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
新しい Dictionary オブジェクトを作成します。Dictionary オブジェクトからキーを削除するには、delete
演算子を使用します。
weakKeys:Boolean (default = false ) — オブジェクトキーに "弱" 参照を使用するように、Dictionary オブジェクトに指示します。オブジェクトへの唯一の参照が、指定した Dictionary オブジェクトにある場合は、そのキーがガベージコレクションの対象となり、オブジェクトが収集されるときにテーブルから削除されます。ただし、Dicrionary が表から弱い String キーを削除することはありません。特に、String キーの場合、弱い参照がキー表から削除されることはなく、Dictionary は対応する値への強い参照を保持し続けます。
|
toJSON | () | メソッド |
public function toJSON(k:String):*
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 11, AIR 3, Flash Lite 4 |
Dictionary オブジェクトの値の JSON エンコーディングをカスタマイズするためのオーバーライド可能なメソッドです。
JSON.stringify()
メソッドは、スキャンする各オブジェクトの toJSON()
メソッドを検索します。toJSON()
が見つかれば、JSON.stringify()
で検出された値ごとに toJSON() メソッドが呼び出され、値のペアとなっているキーが渡されます。
Dictionary には、単純にクラス名を返すデフォルトの toJSON()
実装が含まれています。Dictionary オブジェクトを JSON に書き出す場合は、独自の toJSON()
実装を行う必要があります。このためには、クラスのプロトタイプの toJSON()
メソッドを再定義します。
toJSON()
メソッドは、あらゆるタイプの値を返すことができます。オブジェクトを返す場合は、stringify()
でそのオブジェクトが再帰的に処理されます。toJSON()
が文字列を返す場合は、stringify()
で再帰的な処理は行われず、オブジェクトをスキャンする処理が続行されます。
パラメーター
k:String — JSON.stringify() がこのオブジェクトをスキャンして検出されたキーと値のペアのキーです。
|
* — クラス名の文字列です。
|
関連する API エレメント
Object.prototype
Tue Jun 12 2018, 10:34 AM Z