Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.11.2015, 13:53
Профессор
Отправить личное сообщение для Mess4me Посмотреть профиль Найти все сообщения от Mess4me
 
Регистрация: 03.11.2014
Сообщений: 263

Варианты решения
Коллеги , какие варианты решения можете предложить не задействовав toString в решении?
console.log(sum(2, 5, 10));//17
   console.log(sum(2, 5)(10));//17
   console.log(sum(2)(5)(10));//17
   console.log(sum(2)(5, 10));//17

Последний раз редактировалось Mess4me, 18.11.2015 в 16:11.
Ответить с цитированием
  #2 (permalink)  
Старый 18.11.2015, 15:43
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,232

Mess4me, что есть sum?

Сообщение от Mess4me
не задействовав toString
var a=1;
consol.log(''+a);
consol.log(a+'');
Ответить с цитированием
  #3 (permalink)  
Старый 18.11.2015, 15:56
Профессор
Отправить личное сообщение для Mess4me Посмотреть профиль Найти все сообщения от Mess4me
 
Регистрация: 03.11.2014
Сообщений: 263

ksa,
sum это та функция что выдаст результат )
Вот её как раз я и хочу чтобы кто то написал )
Ответить с цитированием
  #4 (permalink)  
Старый 18.11.2015, 16:01
Профессор
Отправить личное сообщение для Mess4me Посмотреть профиль Найти все сообщения от Mess4me
 
Регистрация: 03.11.2014
Сообщений: 263

ksa,
function sum(a) {

  var currentSum = a;

  function f(b) {
    currentSum += b;
    return f;
  }

  f.toString = function() {
    return currentSum;
  };

  return f;
}

alert( sum(1)(2) ); // 3
alert( sum(5)(-1)(2) ); // 6
alert( sum(6)(-1)(-2)(-3) ); // 0
alert( sum(0)(1)(2)(3)(4)(5) ); // 15

Этот пример работает для вызовов (0)(1)(2)(3)(4)(5) и т п .
Как реализовать без toString и для
console.log(sum(2, 5, 10));//17
   console.log(sum(2, 5)(10));//17
   console.log(sum(2)(5)(10));//17
   console.log(sum(2)(5, 10));//17

Последний раз редактировалось Mess4me, 18.11.2015 в 16:12.
Ответить с цитированием
  #5 (permalink)  
Старый 18.11.2015, 16:12
Профессор
Отправить личное сообщение для Mess4me Посмотреть профиль Найти все сообщения от Mess4me
 
Регистрация: 03.11.2014
Сообщений: 263

ksa,
исправил
Ответить с цитированием
  #6 (permalink)  
Старый 18.11.2015, 16:17
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,232

Сообщение от Mess4me
Как реализовать без toString
Как вариант...

function sum(a) {
  var currentSum = a;
  function f(b) {
    currentSum += b;
    return f;
  }
  f.get = function() {
    return currentSum;
  };
  return f;
}
alert( sum(1)(2).get() ); // 3
alert( sum(5)(-1)(2).get() ); // 6
alert( sum(6)(-1)(-2)(-3).get() ); // 0
alert( sum(0)(1)(2)(3)(4)(5).get() ); // 15

console.log(sum(2, 5, 10).get());//17
console.log(sum(2, 5)(10)).get();//17
console.log(sum(2)(5)(10)).get();//17
console.log(sum(2)(5, 10)).get();//17
Ответить с цитированием
  #7 (permalink)  
Старый 18.11.2015, 16:20
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,232

Или так...

function sum(a) {
  var currentSum = a;
  function f(b) {
	if (b) {
		currentSum += b;
		return f;
	} else {
		return currentSum;
	};
  };
  return f;
};
alert( sum(1)(2)() ); // 3
alert( sum(5)(-1)(2)() ); // 6
alert( sum(6)(-1)(-2)(-3)() ); // 0
alert( sum(0)(1)(2)(3)(4)(5)() ); // 15
Ответить с цитированием
  #8 (permalink)  
Старый 18.11.2015, 16:27
Профессор
Отправить личное сообщение для Mess4me Посмотреть профиль Найти все сообщения от Mess4me
 
Регистрация: 03.11.2014
Сообщений: 263

ksa,
хорошие решения )
как реализовать для

console.log(sum(2, 5, 10));//17
   console.log(sum(2, 5)(10));//17
   console.log(sum(2)(5)(10));//17
   console.log(sum(2)(5, 10));//17
Ответить с цитированием
  #9 (permalink)  
Старый 18.11.2015, 16:29
Профессор
Отправить личное сообщение для Mess4me Посмотреть профиль Найти все сообщения от Mess4me
 
Регистрация: 03.11.2014
Сообщений: 263

ksa,
прочитал в комментариях - дали кому то на собеседовании.
Ответить с цитированием
  #10 (permalink)  
Старый 18.11.2015, 16:50
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,232

Сообщение от Mess4me
дали кому то на собеседовании
Бедный соискатель...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Варианты сохранения массивов (из js) на сервере? romm Общие вопросы Javascript 8 17.01.2015 14:08
Прошу оценить варианты цветовой гаммы, жду ваших советов Adriano Ваши сайты и скрипты 2 05.01.2014 17:35
Составить алгоритм и программу для решения следующей задачи. Даны два массива X (5), rjabijj Общие вопросы Javascript 2 05.07.2012 22:02
Добавить варианты в поле <inpute type=text> softrix AJAX и COMET 2 06.07.2010 12:07
Варианты решения задачи bobri4 Элементы интерфейса 1 07.10.2009 01:41