Показать сообщение отдельно
  #2 (permalink)  
Старый 20.11.2018, 18:16
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

А этот работает
function makeBuffer() {
  var text = '';

   return function buf(piece) {
     buf.clear = function(){
       text = '';
     };
     if (arguments.length == 0) { // вызов без аргументов
       return text;
     }
     text += piece;
   };
};

var buffer = makeBuffer();

// добавить значения к буферу
buffer('Замыкания');
buffer(' Использовать');
 buffer.clear();
buffer(' Нужно!');
alert( buffer() ); // 'Замыкания Использовать Нужно!'


У вас во втором примере возвращается описание функции без метода clear
Ответить с цитированием