Obtenha a largura do dispositivo em javascript

Existe uma maneira de obter a largura do dispositivo dos usuários, em oposição à largura da porta de visualização, usando javascript?

s consultas da mídia @ CSS oferecem isso, como posso dizer

@media screen and (max-width:640px) {
    /* ... */
}

@media screen and (max-device-width:960px) {
    /* ... */
}

Isso é útil se eu estiver segmentando smartphones na orientação paisagem. Por exemplo, no iOS, uma declaração demax-width:640px terá como alvo os modos paisagem e retrato, mesmo em um iPhone 4. Pelo que sei, esse não é o caso do Android; portanto, usar a largura do dispositivo nessa instância visa com sucesso as duas orientações, sem direcionar os dispositivos de mesa.

Contud, se estou chamando uma ligação javascript com base na largura do dispositivo, pareço estar limitado a testar a largura da janela de visualização, o que significa um teste extra, como a seguir,

if ($(window).width() <= 960 && $(window).height <= 640) { /* ... */ }

Isso não me parece elegante, dada a dica de que a largura do dispositivo está disponível para cs

questionAnswers(8)

yourAnswerToTheQuestion