В объекте methods создается ключ с именем name (который мы передали как аргумент) и этому ключу присваивается значение func (который мы тоже передали как аргумент) .
Эта строчка позволяет добавлять новые методы для калькулятора.
Например умножение:
calc.addMethod("*", function(a, b) {
return a * b;
});
Первый аргумент "*" - имя ключа, второй аргумент - это анонимная функция, которая присваивается ключу.
В итоге объект methods будет выглядеть так:
methods = {
"-": function(a, b) {
return a - b;
},
"+": function(a, b) {
return a + b;
},
"*": function(a, b) {
return a * b;
};
При обращению к одному из методов будет выполнятся соответствующая анонимная функция.