2016-12-05 4 views
-1
var obj = { 
    someFunc : function() { 
    console.log("Hello"); 
    console.log(this); 
    var obj1 = { 
     someFunc1 : function() { 
      console.log("Hi"); 
     } 
    }; 
    } 
}; 

obj.someFunc(); 
obj.obj1.someFunc1(); 

Я только что создал объект. И внутри объекта, метод, а затем новый объект и obj1. Я просто пытаюсь проверить ключевое слово 'this'. Но, мне кажется, это грамматическая ошибка в js. Это невозможно. Правильно? Но почему?Могу ли я добавить объект внутри метода в JavaScript?

+0

это возможно, вы просто не делаете это правильно –

+0

'this' в методе объекта будет ссылаться на этот объект – nem035

+0

Вы можете использовать' this.obj1 = {...} '' называть OBJ. obj1.someFunc1() '. – 31piy

ответ

2
var obj = { 
someFunc : function() { 
    console.log("Hello"); 
    console.log(this); 
    return { 
     someFunc1 : function() { 
     console.log("Hi"); 
    } 
    }; 
} 
}; 


obj.someFunc().someFunc1(); 
+0

Что я хочу знать, можно ли объявить другой объект внутри метода? ??? var obj = { SomeFunc: function() { console.log (this); var obj1 = { некоторыеFunc1: функция() { console.log (это) } }; } }; obj.someFunc(). SomeFunc1(); –

Смежные вопросы