Как определить диагональ экрана телефона в дюймах на javascript?
В пикселях:function getPxDiag(){
   var scW = screen.width, scH = screen.height;
   //return Math.hypot(scW, scH) - не работает в IE
   return Math.sqrt( Math.pow(scW, 2) + Math.pow(scH, 2) );
}UPD:
Чтобы перевести в дюймы нужно знать количество точек на линейный дюйм (DPI). Для этого можно воспользоваться старенькой единицей изменения CSS - in. Минус этого метода в том, что придется засунуть в DOM лишний элемент. <div id="inch" style="width:1in;"></div>//Общая формула: PIXEL = INCHES / (1 / DPI);
function getInchDiag(){
  var DPI = inch.offsetWidth;
  return getPxDiag() * (1/DPI);
}

alert( getInchDiag() );
jsfiddle.net/In4in/yboco3wd
Интересный момент - данный вариант, а так же вариант от riot26 показывают на 5 дюймов больше для моего устройства, без понятия почему.UPD 2:
Собственно, оказалось это связанно с тем, что на большей части устройств браузером (или чем-то там еще, не разбираюсь) неправильно определяется DPI (в 96 точек на дюйм) и 1in, соотвественно, имеет ширину меньше, чем реальный дюйм. 
Как исправить? -Без понятия :(
www.quirksmode.org/mobile/viewports.html (перевод)
tl;dr
использовать device-width и device-height в css
или screen.width и screen.height в js