Edit in JSFiddle

var itemArray = [[8],[6],[4],[3],[3],[2],[1],[1]],
    ins = [4.2];


// insert ins into itemArray;

  len = itemArray.length, start = 0;
  while ((len /= 2) > 1) {
    start += itemArray[Math.ceil(start + len)][0] > ins[0] ? len : 0
  }
  itemArray.splice(Math.ceil(start + (itemArray[Math.ceil(start)][0] > ins[0])), 0, ins );




foo.innerHTML = itemArray.join('<br>');
<div id="foo"></div>