将对象转换为自定义类
我正在开发一个 HTML 5 应用程序。
在 Javascript 中,我定义了一个自定义类和一个 HashTable 实现:
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 来添加 Card 的对象。我使用此代码添加卡片:
...
var card = new Card(id, name, description);
$.viacognitaspace.cards.SetItem(id, card);
...
我的问题是当我调用 HashTable.GetItem 时,我不知道如何将返回的对象转换为 Card 类。
var cardObject = $.viacognitaspace.cards.GetItem(cardNumber);
此处,cardObject
未定义。
如果我这样做:
$('#cardName').text(cardObject.name);
我会收到错误。
我该如何解决这个问题?
I'm developing a HTML 5 application.
In Javascript I have defined a custom class and a HashTable implementation:
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];
}
}
I use HashTable to add Card's objects. I use this code to add cards:
...
var card = new Card(id, name, description);
$.viacognitaspace.cards.SetItem(id, card);
...
My problem is when I call HashTable.GetItem and I don't know how to cast object returned to Card class.
var cardObject = $.viacognitaspace.cards.GetItem(cardNumber);
Here, cardObject
is undefined.
If I do this:
$('#cardName').text(cardObject.name);
I get an error.
How can I fix this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试将代码修改为以下内容:
您还需要创建
HashTable 函数
的实例。示例:
http://jsfiddle.net/3BWpM/
Try modifying your code to the following:
You also need to create an instance of the
HashTable function
.Example:
http://jsfiddle.net/3BWpM/