2015-09-10 3 views
2

Когда я пытаюсь связать десятичное значение, превышающее 17 цифр, до нокаутного наблюдаемого свойства, я сталкиваюсь с неравномерным поведением knocukout.

Объяснение проблемы: Мы вводим значение 12345678987654321 с десятичной точкой в ​​разных местах. Случай 1: если значение +123456789,87654321 это приводит к = +123456789,87654321
Случай 2: если значение +1234567,8987654321 это приводит к = +1234567,8987654322
Случай 3: если значение +12345678,987654321 это приводит = +12345678,98765432
Случай 4 (без десятичной): если значение 12345678987654321 it results = 12345678987654320.
См. Комментарии к ссылке JS fiddle.Вопрос о округлении десятичного значения в нокауте

Любые предложения? или любой Javascript или любое свойство нокаута, которое мы можем применить, чтобы избежать этого неравномерного поведения?

+0

Ссылка на проблему: http://jsfiddle.net/LkqTU/26669/ –

+1

Возможный дубликат: http://stackoverflow.com/questions/1086575/how-can-i-handle-numbers-bigger- чем-17-цифр-в-firefox-ie7 – Dandy

+0

@Dandy: Это решение кажется довольно старым, и разве у нас нет собственности в нокауте, чтобы преодолеть эту проблему? Даже он правильно подходит для случая 1. Поэтому ищем некоторые работы в других случаях. –

ответ

1

Нокаут не связан с устранением всех недостатков JavaScript. Он существует, чтобы получить вашу модель данных из вашего представления. Для других проблем вам нужно посмотреть на другие решения. Некоторые математические библиотеки обсуждаются here.

Смежные вопросы