我正在接收來自服務器的一些JSON對象,我想用已經定義好的方法''類型化'或'祝福'給一個對象。有沒有辦法爲普通的JSON對象設置原型?如何設置JSON對象的原型?
function MyClass(someValue) {
this.myProperty = someValue;
}
MyClass.prototype.someMethod = function() { return "Here's " + this.myProperty + "!"};
var json = {myProperty : 'someValue'};
// ??? json.prototype = MyClass doesn't work, of course.
var result = json.someMethod();
我該怎麼做?
我不知道這將在Safari或Chrome中起作用。你所描述的「其他可能性」實際上是最好的辦法。 – Pointy 2010-11-04 13:54:52
@Pointy我測試過了,它確實如此。對IE來說,我發現了一個很酷的黑客,可以用來代替__proto__:http://www.webmasters.am/blog/tag/__proto__/。 – 2010-11-04 13:58:04
好吧,它不是標準化的(即使使用ECMAScript 5),請自行承擔風險:-) – Pointy 2010-11-04 14:06:34