Преобразование аргументов функции

function sum(a, b) {
  return a + b;
};

alert(sum('1', '2')); // Как '1' и '2' преобразовать в число? 
// Ответ должен быть 3 а не 12))


Ответы (1 шт):

Автор решения: Михаил Камахин

Так в число

function sum(a, b) {
  return +a + +b;
};

console.log(sum('1', '2'));

Или так в число

function sum(a, b) {
  return Number(a) + Number(b);
};

console.log(sum('1', '2'));

В строку:

function str(a, b) {
  return a.toString() + b.toString();
};

console.log(str(1, 2));

В строку ещё:

function str(a, b) {
  return String(a) + String(b);
};

console.log(str(1, 2));

В строку ещё*:

function str(a, b) {
  return ''+a + ''+b;
};

console.log(str(1, 2));

→ Ссылка