使用 JavaScript 檢測使用者的作業系統


JavaScript 是一種用途廣泛且動態的程式語言,已成為 Web 開發領域不可或缺的一部分。它易於使用且能夠為網站帶來互動性,使其在開發者中非常受歡迎。JavaScript 能夠建立各種各樣的應用程式,從網站上的簡單互動元素到複雜的基於 Web 的應用程式。

在本教程中,我們將展示如何使用 JavaScript 功能來找出訪問您網站的使用者的作業系統。瞭解此資訊對於為他們提供自定義體驗非常有用。您可以更改網站的外觀,修改某些功能的工作方式,甚至為不同的平臺提供不同的使用者介面。在本教程結束時,您將能夠使用 JavaScript 檢測使用者的作業系統。我們將詳細介紹以下方法:

  • navigator.platform 屬性

  • navigator.userAgent 屬性

每種方法都有其自身的優點和缺點,我們將討論每種方法的細節,以幫助您選擇最適合您需求的方法。在本教程結束時,您將對如何使用 JavaScript 檢測使用者的作業系統有深入的瞭解。

navigator.platform 屬性

navigator.platform 屬性是 JavaScript 中 navigator 物件的一個屬性,它提供有關平臺和使用者作業系統的的資訊。此屬性是一個字串,其中包含使用者在其上執行應用程式的平臺,例如“MacIntel”或“Win32”。可以使用 navigator.platform 表示式訪問此屬性,並且結果可用於檢測使用者的作業系統。

console.log(navigator.platform);

您將得到以下輸出:

"MacIntel"

以下是如何利用 navigator.platform 屬性檢測使用者的作業系統:

if (window.navigator.platform.indexOf("Win") != -1) {
    console.log("The user is running Windows");
} else if (window.navigator.platform.indexOf("Mac") != -1) {
    console.log("The user is running Mac OS");
} else if (window.navigator.platform.indexOf("Linux") != -1) {
    console.log("The user is running Linux");
} else {
    console.log("The user's operating system could not be determined");
}

在上面的程式碼中,我們使用 navigator.platform 屬性來檢測使用者的作業系統。首先,我們檢查 navigator.platform 是否包含字串“Win”。如果包含,則表示使用者正在執行 Windows。我們將一條訊息“使用者正在執行 Windows”記錄到控制檯。

接下來,我們檢查 navigator.platform 是否包含字串“Mac”。如果包含,則表示使用者正在執行 Mac OS。我們將一條訊息“使用者正在執行 Mac OS”記錄到控制檯。

我們也對 Linux 重複此過程。如果這些條件均未滿足,則我們將一條訊息“無法確定使用者的作業系統”記錄到控制檯。

因此,這段程式碼檢查使用者的作業系統並將一條訊息記錄到控制檯,說明使用者正在執行什麼作業系統。

它將產生以下輸出:

"The user is running Mac OS"

navigator.userAgent 屬性

navigator.userAgent 屬性是使用 JavaScript 確定使用者作業系統的另一種方法。它提供有關使用者瀏覽器的資訊,包括型別和版本,以及底層作業系統。此資訊儲存在字串格式中,可以透過使用 navigator.userAgent 表示式訪問。透過解析此字串,您可以識別使用者的作業系統,並使用此資訊來根據其特定平臺定製網站的體驗。

console.log(navigator.userAgent);

它將產生類似於此的輸出

"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Safari/605.1.15"

以下是如何使用 navigator.userAgent 屬性檢測作業系統的示例:

if (window.navigator.userAgent.indexOf("Windows") != -1) {
    console.log("The user is running Windows");
} else if (window.navigator.userAgent.indexOf("Mac OS") != -1) {
    console.log("The user is running Mac OS");
} else if (window.navigator.userAgent.indexOf("Linux") != -1) {
    console.log("The user is running Linux");
} else {
    console.log("The user's operating system could not be determined");
}

上面的程式碼使用特徵檢測方法來確定使用者的作業系統。該方法使用“navigator.userAgent”屬性,這是一個包含有關瀏覽器及其執行的作業系統的資訊的字串。

首先,我們使用 if 語句檢查字串“Windows”是否出現在“navigator.userAgent”屬性中。如果出現,我們將“使用者正在執行 Windows”記錄到控制檯。

接下來,我們將檢查使用者是否使用 Mac OS。我們在使用者代理中搜索字串“Mac OS”。如果找到,我們將記錄“使用者正在使用 Mac”。

我們將對 Linux 重複此過程。如果字串“Linux”位於使用者代理中,我們將記錄“使用者正在使用 Linux”。

如果上述條件均未滿足,我們將假設無法確定使用者的作業系統,並記錄“使用者的作業系統未知”。

因此,這段程式碼檢查使用者的作業系統並將一條訊息記錄到控制檯,說明使用者正在執行什麼作業系統。

它將產生以下輸出:

"The user is running Mac OS"

結論

在本教程中,我們探討了使用 JavaScript 檢測使用者作業系統的各種方法。我們利用 navigator.platform 和 navigator.userAgent 方法來確定作業系統。透過各種示例,我們解釋瞭如何使用這些方法檢查 Windows、Mac OS、Linux 和其他作業系統。透過使用特徵檢測方法,我們解釋瞭如何在不依賴 userAgent 或 platform 屬性的情況下確定作業系統。

更新於:2023年5月18日

7K+ 瀏覽量

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.