anchor.diff:  
   [source, javascript]
   ----
  -function initCompleteCallback(oSettings, json) {
  +function initCompleteCallback(settings, json) {
     alert( 'DataTables has finished its initialisation.' );
   }
   ----
  
positive.code: All callbacks don't have the same parameters. Take care to use the right ones!
  
  [discrete]
  ===== Cookie callback 
  
  This callback allows you to customise the cookie and / or the parameters being stored when using DataTables with state saving enabled. This function is called whenever the cookie is modified, and it expects a fully formed cookie string to be returned. Note that the data object passed in is a Javascript object which must be converted to a string (JSON.stringify for example).
  
  [source, javascript]
  ----
  function cookieCallback(sName, oData, sExpires, sPath) {
    // Customise oData or sName or whatever else here
    return sName + "=" + JSON.stringify(oData) + "; expires=" + sExpires +"; path=" + sPath;
  }
  ----
  
  * JSP usage: `<datatables:callback type="cookie" function="cookieCallback" />`
  * Thymeleaf usage: `<div dt:confType="callback" dt:type="cookie" dt:function="cookieCallback">`
  
  [discrete]
  ===== CreatedRow callback
  
  This callback is called when a TR element is created (and all TD child elements have been inserted), or registered if using a DOM source, allowing manipulation of the TR element (adding classes etc).
  
  [source, javascript]
  ----
  function createdRowCallback(nRow, aData, iDataIndex){
    // Make the fifth column bold
    $('td:eq(4)', nRow).css({ 'font-weight': 'bold' });
  }
  ----
  
  
negative.code: 
  [source, javascript]
  ----
  // Show large numbers with a ' separator
  function formatNumberCallback(toFormat) {
    return toFormat.toString().replace(/\B(?=(\d{3})+(?!\d))/g, "'");
  };
  ----
  
  