0

我使用 Prototype 函数在他们自己的文件中创建了一些 Javascript“类”,如下所示:

function Playlist(id, name){
    this.id = id;
    this.name = name;
}

Playlist.prototype.getid = function(){return this.id;} 
Playlist.prototype.getname = function(){return this.name;}

我像这样创建那个“类”的实例:

var playlist = new Playlist();

有什么方法可以让我在多个 HTML 页面中使用一个实例?我试过这样:

"<a href='next.html?pl="+playlist+"'>Next</a>"

但这只会给我 [Object, object] ,我对此无能为力。我将不胜感激任何解决方案。

4

1 回答 1

0

不,没有办法通过 HTTP 传递 JavaScript 函数实例。JSON 不会帮助您,因为它只序列化属性而不是方法。您可以序列化函数声明并通过 重新创建它们eval,但这是邪恶的,无论如何都不会做您想做的事。

两种可能的解决方案是:

  1. 将所有内容保存在一个页面上。单页应用程序非常受欢迎。加载您需要异步加载的内容,您仍然可以访问Playlist该页面上的实例。
  2. 传递您需要通过 HTTP 重新创建对象实例的属性 (idname),然后在下一页上创建实例。
于 2013-08-28T13:15:13.880 回答