如何判断当前环境是移动端还是 PC 端?

使用 JavaScript 检测用户代理字符串以区分移动端和 PC 端。

JavaScript 中等 设备检测 移动端 PC端

可以使用 JavaScript 检测浏览器的用户代理(userAgent)字符串来判断当前是移动端还是 PC 端环境。常用的方法是检查 navigator.userAgent 属性中是否包含移动设备特有的关键词。

具体实现步骤:

  1. 使用 navigator.userAgent 获取用户代理字符串。
  2. 定义一个函数,通过正则表达式测试字符串是否包含如 “Mobi”、”Android”、”iPhone” 等移动设备关键词。

以下是参考代码:

// 基本移动端检测函数
function isMobile() {
  return /Mobi|Android|iPhone|iPad|iPod|webOS|BlackBerry|Windows Phone/i.test(navigator.userAgent);
}

// 使用方法:
if (isMobile()) {
  console.log('Current environment is mobile device.');
} else {
  console.log('Current environment is PC.');
}

另一个常见的做法:

// 直接进行用户代理检测
const isMobile = /Mobile/i.test(navigator.userAgent);
if (isMobile) {
  // 移动端逻辑
} else {
  // PC 端逻辑
}
  • 优点:实现简单高效,无额外依赖。
  • 缺点
    • 不完全可靠,因为用户可以修改用户代理或使用模拟器。
    • 未来可能失效(若设备标识变化),推荐结合实际方法如 CSS 媒体查询提高准确性。

建议通过测试不同设备验证可靠性,并注意区分特定设备类型(如 Android vs. iOS)时扩展函数逻辑。