Вызов методов из объекта Javascript

#javascript

#javascript

Вопрос:

Если у меня есть

 var function_holder = { 

        someFunction: function () { } 
}; 
  

Как мне вызвать someFunction .

Также есть ли способ написать someFunction вне function_holder?

Спасибо

Комментарии:

1. function_holder.someFunction(); Я не понимаю вашего второго вопроса

Ответ №1:

function_holder является объектом, someFunction является методом.

Вызовите function_holder.someFunction(); для вызова метода.

Вы можете определить функцию отдельно либо как объявление функции

 function someFunction() {
    // code
} 
  

или переменной функции

 var someFunction = function () {
    // code
}
  

Ответ №2:

Назови это:

 function_holder.someFunction()
  

Извне:

 function other() {
    alert('Outside');
}

var obj = {
    someFunction: other
};

obj.someFunction(); // alerts Outside;
  

Ответ №3:

Вы могли бы написать это вместо:

function_holder.someFunction = function() { }

Вы можете вызвать функцию следующим образом:

function_holder.someFunction()

Ответ №4:

вызовите его:
function_holder.someFunction() Это приведет к выполнению функции, как говорят другие.

Я думаю, у меня есть идея, что вы подразумеваете под «написать someFunction вне function_holder?»..

 var theFunc = function(){};
function_holder = {};
function_holder.someFunction = theFunc;
  

Существует множество способов сделать что-либо в javascript.

Ответ №5:

Есть несколько разных способов сделать то, что вы хотите сделать.

 function function_holder() {

    this.my_function = function() {};
};
  

Вы бы вызвали это, создав экземпляр функции holder как таковой.

 var fc = new function_holder();
fc.my_function();
  

Или, в качестве альтернативы, вы могли бы сделать это таким образом.

 function function_holder() {};

function_holder.prototype.my_function = function() {};
  

Вы бы назвали это следующим образом:

 function_holder.my_function();
  

Комментарии:

1. Это неправильно. function_holder является объектом и new <Object> выдает ошибку типа