Вопрос по примеру сравнения

Рейтинг: 0Ответов: 1Опубликовано: 15.01.2015

Наткнулся в книге на такой пример:

var x = .3 - .2; 
var y = .2 - .1; 
x == y // => false: получилисьдва разных значения!
x == .1 // => false: .3-.2 не равно .1
y == .1 // => true: .2-.1 равно .1

Объясните мне, дураку (я то сначала не поверил, и в консоли гугла это повторил, и оказалось, что автор прав!), но почему x == .1 // => false?

Ответы

▲ 1Принят

Скорее всего, возникает ошибка округления чисел, так в консоли mozilla у меня:

.3 - .2 == 0.09999999999999998
.2 - .1 == 0.1

P.S. В следующий раз говорите, какая книга и автор, и давайте более развернутый вопрос, что вы изучаете и что говорит автор.