什么JavaScript对象复制函数与greasemonkey一起工作?

什么JavaScript对象复制函数与greasemonkey一起工作?,javascript,object,copy,greasemonkey,Javascript,Object,Copy,Greasemonkey,我知道还有一个问题与在JavaScript中复制对象有关,但它们提供的代码不能与greasemonkey一起使用。根据我所能追踪到的,接受答案的代码在以下行中消失/停止: var temp = new obj.constructor(); 有没有办法知道出了什么问题 这不是真的需要我使用相同的功能为对象复制,但我想一些工作。你知道一些功能吗?这似乎有用: var a = { yo: 'hello', do: function() {alert(this.yo + ' world'

我知道还有一个问题与在JavaScript中复制对象有关,但它们提供的代码不能与greasemonkey一起使用。根据我所能追踪到的,接受答案的代码在以下行中消失/停止:

var temp = new obj.constructor();
有没有办法知道出了什么问题

这不是真的需要我使用相同的功能为对象复制,但我想一些工作。你知道一些功能吗?

这似乎有用:

var a = {
    yo: 'hello',
    do: function() {alert(this.yo + ' world');}
};

var cloneStructor = function() {};
cloneStructor.prototype = a;

var b = new cloneStructor();
a.yo = 'goodbye';
b.yo = 'what\'s up';

a.do();
b.do();

这难道不是一个引用,而不是一个真正的副本吗?我提供的示例使用了'new'关键字,并且似乎可以工作——a和b以不同的属性结束。我发现的另一种方法使用JSON.eval(JSON.stringify(cloneMe))。那可能值得一试。否则,您可以手动循环所有属性并重新构建。