Из объекта получить число можно в нескольких ситуациях: если объект преобразован в строку и из нее необходимо получить число, если число должно сформироваться из ключей объекта, если число должно сформироваться из значений объекта. Рассмотрим каждый из случаев.

Если объект преобразован в строку, он имеент либо JSON формат, либо разделенные символами пары ключей и значений. Рассмотрим ситуацию, когда это JSON, а для преобразования в число применим метод match(). Об остальных способах получения из объекта строки можно прочитать в соответствующей главе мануала. Cпособы получения из строки числа в этой главе.

let object = {
  name: 'Иван',
  age: 45,
  mail: 'ivan999@mail.com'
};
let stringifyObject = '{"name":"Иван","age":45,"mail":"ivan999@mail.com"}';
let number = +stringifyObject.match(/\d/g).join('');  // 45999

Для получения числа из ключей объекта удобней всего воспользоваться функцией Object.keys(), которая возвращает массив из ключей. А дальше из массива получим число (подробней о способе в этой главе).

let object = {
  1: 'Иван',
  2: 'Петр',
  45: 'Олег',
  name666: 'Лука'
};
let arrayOfKeys = Object.keys(object);  // ['1', '2', '45', 'name666']
let number = +arrayOfKeys.map(item => item.match(/\d/g).join('')).join('');  // 1245666

Для получения числа из значений объекта существует функцией Object.values(), которая возвращает массив из значений.

Рассмотрим случай, когда значение может быть числом. Для этого полученный массив необходимо будет преобразовать в строку другим способом. А дальше уже из строки получим число.

let object = {
  id: 345,
  name: 'Иван',
  mail: 'ivan999@mail.com'
};
let arrayOfValues = Object.values(object);  // [345, 'Иван', 'ivan999@mail.com']
let string = arrayOfValues.join('');  // '345Иванivan999@mail.com'
let number = +string.match(/\d/g).join('');  // 345999