Deteksi agen pengguna yang dapat dikomposisi menggunakan Ramda , ditenagai oleh ua-parser-js .
Karena browser memiliki bug bugz.
MDN menawarkan beberapa saran bagus tentang kapan dan kapan tidak menggunakan deteksi agen pengguna.
Bugz sebenarnya bukan perpustakaan lain, itu hanya pembungkus fungsional yang ringan di sekitar ua-parser-js .
* Untuk mereka yang sudah menggunakan RAMDA.
$ npm install ramda
$ npm install bugz
RAMDA didefinisikan sebagai ketergantungan teman sebaya yang berarti perlu didefinisikan dalam paket Anda sendiri.json.
https://repl.it/nlm0/1
import { isOSName } from 'bugz' ;
const isWindows = isOSName ( 'Windows' ) ;
if ( isWindows ( window . navigator . userAgent ) ) {
console . log ( 'OS is Windows' ) ;
} import { isOSName , isBrowserName } from 'bugz' ;
import { allPass } from 'ramda' ;
const isWindows = isOSName ( 'Windows' ) ;
const isFirefox = isBrowserName ( 'Firefox' ) ;
const isWindowsFirefox = allPass ( [
isWindows ,
isFirefox
] ) ;
if ( isWindowsFirefox ( window . navigator . userAgent ) ) {
console . log ( 'OS is Windows and Browser is Firefox' ) ;
} import { isOSName , isBrowserName , isBrowserVersionLt } from 'bugz' ;
import { allPass } from 'ramda' ;
const isWindows = isOSName ( 'Windows' ) ;
const isFirefox = isBrowserName ( 'Firefox' ) ;
const isBrowserVersionLt3_7 = isBrowserVersionLt ( '3.7' ) ;
const isWindowsFirefoxLt3_7 = allPass ( [
isWindows ,
isFirefox ,
isBrowserVersionLt3_7
] ) ;
if ( isWindowsFirefoxLt3_7 ( window . navigator . userAgent ) ) {
console . log ( 'OS is Windows and Browser is Firefox < 3.7' ) ;
} Contoh lebih lanjut dapat ditemukan di sini.
Semua fungsi dikumpulkan secara default.
tentang (ua: string) → void
Mencatat semua informasi yang diperoleh dari string agen pengguna ke konsol.
getBrowser (ua: string) → { name: string, version: string, majorVersion: number }
Mengembalikan browser dari string agen pengguna.
getBrowsername (ua: string) → string
Mengembalikan nama browser dari string agen pengguna.
getBrowserVersion (ua: string) → string
Mengembalikan versi browser dari string agen pengguna.
getengine (ua: string) → { name: string, version: string }
Mengembalikan mesin dari string agen pengguna.
getenginename (ua: string) → string
Mengembalikan nama mesin dari string agen pengguna.
getengineversion (ua: string) → string
Mengembalikan versi mesin dari string agen pengguna.
getos (ua: string) → { name: string, version: string }
Mengembalikan OS dari string agen pengguna.
getOsname (ua: string) → string
Mengembalikan nama OS dari string agen pengguna.
getosversion (ua: string) → string
Mengembalikan versi OS dari string agen pengguna.
isandroid (ua: string) → boolean
Mengembalikan apakah sistem operasi adalah Android atau tidak.
isandroidbrowser (ua: string) → boolean
Mengembalikan apakah browser adalah browser Android.
IsBrowsERName (name: string) → (ua: string) → boolean
Mengembalikan apakah nama browser itu name atau tidak.
IsBrowserVersion (version: string) → (ua: string) → boolean
Mengembalikan apakah versi browser adalah version .
IsBrowserVersionGT (version: string) → (ua: string) → boolean
Mengembalikan apakah versi browser lebih besar dari version .
IsBrowserVersionGTE (version: string) → (ua: string) → boolean
Mengembalikan apakah versi browser lebih besar atau sama dengan version .
IsBrowserVersionlt (version: string) → (ua: string) → boolean
Mengembalikan apakah versi browser kurang dari version .
IsBrowserVersionlte (version: string) → (ua: string) → boolean
Mengembalikan apakah versi browser kurang dari atau sama dengan version .
ischrome (ua: string) → boolean
Mengembalikan apakah browsernya krom atau tidak.
ISEDGE (ua: string) → boolean
Mengembalikan apakah browser itu ada atau tidak.
iSedgehtml (ua: string) → boolean
Mengembalikan apakah mesinnya edgehtml atau tidak.
isenginename (name: string) → (ua: string) → boolean
Mengembalikan apakah nama mesin itu name atau tidak.
isengineversion (version: string) → (ua: string) → boolean
Mengembalikan apakah versi mesin adalah version atau tidak.
ISEnginEversionGT (version: string) → (ua: string) → boolean
Mengembalikan apakah versi mesin lebih besar dari version atau tidak.
isengineversionGte (version: string) → (ua: string) → boolean
Mengembalikan apakah versi mesin lebih besar atau sama dengan version .
ISEngineVersionlt (version: string) → (ua: string) → boolean
Mengembalikan apakah versi mesin kurang dari version atau tidak.
isengineversionlte (version: string) → (ua: string) → boolean
Mengembalikan apakah versi mesin kurang dari atau sama dengan version .
isfirefox (ua: string) → boolean
Mengembalikan apakah browsernya adalah Firefox atau tidak.
isgecko (ua: string) → boolean
Mengembalikan apakah mesin itu tokek.
ISIE (ua: string) → boolean
Mengembalikan apakah browser adalah Internet Explorer atau tidak.
iSiemobile (ua: string) → boolean
Mengembalikan apakah browser adalah Internet Explorer Mobile atau tidak.
ISIOS (ua: string) → boolean
Mengembalikan apakah sistem operasi adalah iOS atau tidak.
ismacos (ua: string) → boolean
Mengembalikan apakah sistem operasi adalah Mac OS atau tidak.
ismobilesafari (ua: string) → boolean
Mengembalikan apakah browser adalah safari seluler atau tidak.
IsOsName (name: string) → (ua: string) → boolean
Mengembalikan apakah nama OS itu name atau tidak.
isosversion (version: string) → (ua: string) → boolean
Mengembalikan apakah versi OS adalah version atau tidak.
isoSversionGT (version: string) → (ua: string) → boolean
Mengembalikan apakah versi OS lebih besar dari version atau tidak.
isoSversionGte (version: string) → (ua: string) → boolean
Mengembalikan apakah versi OS lebih besar dari atau sama dengan version .
isosversionlt (version: string) → (ua: string) → boolean
Mengembalikan apakah versi OS kurang dari version atau tidak.
isosversionlte (version: string) → (ua: string) → boolean
Mengembalikan apakah versi OS kurang dari atau sama dengan version .
isopera (ua: string) → boolean
Mengembalikan apakah browser itu opera atau tidak.
isoperamobile (ua: string) → boolean
Mengembalikan apakah browser adalah Opera Mobile atau tidak.
ispresto (ua: string) → boolean
Mengembalikan apakah mesinnya presto atau tidak.
Issafari (ua: string) → boolean
Mengembalikan apakah browser adalah safari (desktop).
istrident (ua: string) → boolean
Mengembalikan apakah mesinnya trident atau tidak.
iswebkit (ua: string) → boolean
Mengembalikan apakah mesinnya adalah Webkit atau tidak.
IsWindows (ua: string) → boolean
Mengembalikan apakah sistem operasi adalah Windows atau tidak.
IsWindowsPhone (ua: string) → boolean
Mengembalikan apakah sistem operasi adalah Windows Phone atau tidak.
parse (ua: string) → { ua: string, browser: { name: string, version: string, majorVersion: string }, engine: { name: string, version: string }, os: { name: string, version: string }
Mengembalikan semua informasi yang diperoleh dari string agen pengguna.
import { isBrowserName } from 'bugz' ;Guncangan pohon yang sayangnya tidak terlalu efektif pada Bugz karena sebagian besar ekspor adalah fungsi kari murni yang saat ini tidak rentan terhadap eliminasi kode mati. Oleh karena itu, build commonJs modular juga ditawarkan.
const bugz = require ( 'bugz' ) ; // Or modular for optimized builds
const isBrowserName = require ( 'bugz/isBrowserName' ) ;
const isBrowserVersion = require ( 'bugz/isBrowserVersion' ) ; < script src =" bugz.umd.js " > </ script >
< script >
const isBrowserName = Bugz . isBrowserName ;
</ script > require ( [ 'bugz' ] , bugz => { } ) ; Mit

BrowserStack untuk memberikan langganan gratis untuk mendukung pengujian browser lintas.