0
私はHTML 5アプリケーションを開発しています。 JavaScriptでオブジェクトをカスタムクラスにキャストする
私は、カスタムクラスとハッシュテーブルの実装を定義している:
function Card(newId, newName, newDescription)
{
this.id = newId;
this.name = newName;
this.description = newDescription;
}
function HashTable()
{
var hashTableItems = {};
this.SetItem = function(key, value)
{
hashTableItems[key] = value;
}
this.GetItem = function(key)
{
return hashTableItems[key];
}
}
私はカードのオブジェクトを追加するハッシュテーブルを使用します。私は、カードを追加するには、このコードを使用します。私はHashTable.GetItemを呼び出すと、私はカードのクラスに返されたオブジェクトをキャストする方法がわからないとき
...
var card = new Card(id, name, description);
$.viacognitaspace.cards.SetItem(id, card);
...
私の問題はあります。
var cardObject = $.viacognitaspace.cards.GetItem(cardNumber);
ここで、cardObject
は未定義です。私はこれを行う場合は
:
$('#cardName').text(cardObject.name);
私はエラーを取得します。
どうすればこの問題を解決できますか?
私たちは、コードの残りの部分を参照する必要があります。あなたはカード番号の場所に何かを追加しますか?それは私には問題と思われます。 – Hogan
'cardObject'は未定義ですが、ハッシュテーブルにはありませんが、キャストとは関係ありません。カードオブジェクトを「セット」するだけで、カードオブジェクトが「取得」される(または未定義) – ori
私は質問を更新しました。ここで、HastTableにCardオブジェクトを追加する方法を確認できます。 – VansFannel