Seperti yang telah diketahui orang lain, deteksi fitur lebih disukai daripada memeriksa browser tertentu. Salah satu alasannya adalah string agen pengguna dapat diubah. Alasan lainnya adalah string dapat berubah dan merusak kode Anda di versi yang lebih baru.
Jika Anda masih ingin melakukannya dan menguji versi Safari apa pun, saya sarankan untuk menggunakan ini
var isSafari = navigator.vendor && navigator.vendor.indexOf('Apple') > -1 &&
navigator.userAgent &&
navigator.userAgent.indexOf('CriOS') == -1 &&
navigator.userAgent.indexOf('FxiOS') == -1;
Ini akan bekerja dengan semua versi Safari di semua perangkat: Mac, iPhone, iPod, iPad.
Edit
Untuk menguji di browser Anda saat ini: https://jsfiddle.net/j5hgcbm2/
Edit 2
Diperbarui sesuai dengan dokumen Chrome untuk mendeteksi Chrome di iOS dengan benar
Perlu dicatat bahwa semua Browser di iOS hanyalah pembungkus untuk Safari dan menggunakan mesin yang sama. Lihat komentar bfred.it tentang jawabannya sendiri di utas ini.
Edit 3
Diperbarui sesuai dengan dokumen Firefox untuk mendeteksi Firefox di iOS dengan benar