Retinaディスプレイの判別だけではないWindow.devicePixelRatio

MDNでもRetinaディスプレイの判別に使っていますが、本来この関数はCSS上の1pxが物理ピクセルいくつで表示されているかという値です。

value = window.devicePixelRatio;

つまり、ブラウザの拡大縮小でもこの値が変わってきます。しかもChorme等ブラウザによっては「0.8999999761581421」なんていう値が返ってきたりします。

良く例文で返り値が1はPC、2はRetina、3はiPhoneとか書いてありますが整数だけで判断すると良くない結果になりますのでご注意を。