【发布时间】:2012-09-07 12:39:52
【问题描述】:
我有一个关于方法的严重问题。所以这是我的方法:
Object.prototype.clonage = function() {
var newObj = (this instanceof Array) ? [] : {};
for (i in this) {
if (i == 'clone') continue;
if (this[i] && typeof this[i] == "object") {
newObj[i] = this[i].clonage();
} else newObj[i] = this[i]
} return newObj;
}
浏览器给了我:
未捕获的 RangeError:超出最大调用堆栈大小
在线:
for (i in this) {
有人有同样的问题吗?
【问题讨论】:
-
您可能会无限次或非常频繁地调用
.clonage。 -
Frits 可能是对的。你能给我们一些关于你如何称呼它的背景吗?我刚刚在一次克隆调用中对其进行了测试,它运行良好。
-
我这样使用它:window.tweetOrberByPassed = window.displayedTweetListing.clonage();他们都是对象。我在另一个脚本页面中有相同的功能,我对此没有任何问题。
标签: javascript jquery prototype