Функции внутри объектов

Я знаю, что название нечеткое, но я не знал, что написать.
В JavaScript я знаю, как писать функции, которые будут вызываться так:

<code>argument1.function(argument2);
</code>

Вот демонстрация скрипки:http: //jsfiddle.net/rFXhf
Теперь интересно, смогу ли я сделать:

<code>argument1.argument2.function(argument3);//And even more!
</code>
 Colleen30 апр. 2012 г., 06:08
Что ты пытаешься сделать

Ответы на вопрос(2)

Современный подход ES6

Вам больше не нужно указыватьfunction ключевое слово при определении функций внутри объектов:

var myObj = {
  myMethod(params) {
    // ...do something here
  }
  myOtherMethod(params) {
    // ...do something here
  }
  nestedObj: {
    myNestedMethod(params) {
      // ...do somethinghere
    }
  }
};

Выше будет то же самое, что и ниже, за исключением того, что приведенная ниже версия является повторяющейся и многословной.

var myObj = {
  myMethod: function myMethod(params) {
    // ...do something here
  }
  myOtherMethod: function myOtherMethod(params) {
    // ...do something here
  }
  nestedObj: {
    myNestedMethod: function myNestedMethod(params) {
      // ...do somethinghere
    }
  }
};
Решение Вопроса

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

var argument1 = {
    myvar : "12",
    mymethod : function(test) { return something; }
}

затем позвоните mymethod, как:

argument1.mymethod(parameter);

или более глубокая версия:

var argument1 = {
    argument2 : {
       mymethod : function(test) { return something; }
    }
} 

тогда

argument1.argument2.mymethod(parameter);
 Taha Paksu30 апр. 2012 г., 06:23
Хорошо, теперь я понял. Я не думаю, что вы можете сделать это, потому что "." Соединитель предназначен для объектов, достигающих своих подфункций / переменных.
 Taha Paksu30 апр. 2012 г., 06:14
У вас есть аргументы определенного типа или вы хотите, чтобы они работали над чем-либо?
 user136501030 апр. 2012 г., 06:12
Это бы сработало, но мне нужна версия типа jsfiddle, в которой вы просто пишете: var a; var b; a.pow (b); наприме

Ваш ответ на вопрос