@aris-paskalov

Есть ли разница между унарным плюсом и parseInt?

В моём коде есть следующая функция:

const getRandomLocation = () => {
  return {
    lat: +faker.address.latitude(),
    lng: +faker.address.longitude()
  }
}


Методы faker.address...() возвращают string, а мне нужно number.
Я использовать унарный +, чтобы выполнить конвертацию, а потом вспомнил про функцию parseInt

Есть ли разница в использовании унарного плюса и parseInt? parseInt использовать предпочтительнее?
  • Вопрос задан
  • 228 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
Понятно, что читать спецификацию (+, parseInt) вы вряд ли будете, раз не смогли отличия хотя бы погуглить, так что вот вам несколько примеров разницы, а дальше думайте сами, где что использовать:

parseInt('1!!!') // 1
+'1!!!' // NaN


parseInt('') // NaN
+'' // 0


parseInt('3.14159') // 3
+'3.14159' // 3.14159


parseInt('0b1000101') // 0
+'0b1000101' // 69


parseInt('0o273') // 0
+'0o273' // 187


parseInt({ valueOf: () => 666 }) // NaN
+({ valueOf: () => 666 }) // 666


parseInt('1000000000', 2) // 512
+'1000000000' // 1000000000


parseInt('99', 8) // NaN
+'99' // 99


parseInt('DEAD', 16) // 57005
+'DEAD' // NaN
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы