Math

Description

HTML

<script src="//cdnjs.cloudflare.com/ajax/libs/knockout/3.1.0/knockout-min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/knockout.mapping/2.4.1/knockout.mapping.js"></script>
<div data-bind="text: popIncrease"></div>
<input type="text" data-bind="value: userInput,  valueUpdate: 'afterkeydown'" />

JavaScript

function floorString(str) {
    var pos = str.indexOf('.');
    return (pos >= 0) ? ((str + '00').slice(0, pos + 3)) : (str + '.00');
}

var ViewModel = function () {
    var _self = this;
    _self.userInput = ko.observable();
    //   _self.population = ko.observable(54556239);

    _self.popIncrease = ko.computed(function () {
      
        var value = _self.userInput();
        return !isNaN(value) ? floorString(value) : 'NaN';

    });
};

ko.applyBindings(new ViewModel());