JSFiddle - React, Tailwind, and code Playground

HTML

<script src="http://ajax.aspnetcdn.com/ajax/knockout/knockout-2.2.0.js"></script>

JavaScript

var sv = sv || {};
sv.PagedRequest = function (pageNumber, pageSize) {
    this.pageNumber = ko.observable(pageNumber || 1);
    this.numberOfPages = ko.observable(1);
    this.pageSize = ko.observable(pageSize || sv.DefaultPageSize);
};

var _pagedRequest = new sv.PagedRequest();
var old;

_pagedRequest.pageNumber.subscribe(function (previousValue) {
    console.log("old: " + previousValue);
    old = previousValue;
}, _pagedRequest, "beforeChange");


_pagedRequest.pageNumber.subscribe(function (newValue) {

    console.log("new: " + newValue);
    if (oldValue !== newValue) {
        console.log("valueChanged");        
    }
});

_pagedRequest.pageNumber(10);
_pagedRequest.pageNumber(20);