Я узнал больше о прототипном наследовании javascript. Я знаю, что есть несколько ожесточенные споры о том, следует ли распространять собственные объекты, и я хотел бы полностью отложить эту дискуссию полностью в этом вопросе.Расширение дочернего объекта в javascript
Возможно ли продлить только объект-потомс в javascript?
Продлить все объекты я могу сделать это:
Object.prototype.size = function(){
var length = 0;
for(var i in this){
if(this.hasOwnProperty(i)){
length++;
}
}
return this;
}
Но проблема в том, что он распространяется все объекты. То, что я хотел бы сделать, это так:
var MyNameSpace = function(){
};
MyNameSpace.Object.prototype.size = function(){
var length = 0;
for(var i in this){
if(this.hasOwnProperty(i)){
length++;
}
}
return this;
}
Таким образом, я бы простирающимся только родные объекты в рамках моего глобального объекта.
любые предложения будут большое спасибо
Update:
В ответ на несколько замечаний, я добавляю больше кода, чтобы разъяснить, что я пытаюсь сделать.
Я думаю, что я, возможно, не сформулировал свой вопрос правильно, или, может быть, мое мышление неправильно, но то, что я хотел бы быть в состоянии сделать это:
var my = new MyNameSpace();
var my.name = {firstName : 'Hello', lastName : 'World'};
var nameCount = my.name.size(); // 2
код вы предоставили мне позволит чтобы размер каждого объекта MyNameSpace я создаю, но не объектные литералы, которые являются свойствами объекта MyNameSpace
Вы могли бы просто использовать свой собственный объект, из которого строить другие ... – Anonymous