JavaScript 使用して Windows 11 を判定する
PHPで UserAgent による判定では、「Windows NT 10.0」となった場合、
Windows 11 と Windows 10 の区別ができなくなっています。
「platformVersion」を利用して判定を行い、ブラウザ内に表示する JavaScript を作ってみました。
<span id="sampleOS">OS Judgment</span>
<script type="text/javascript">
//Windows11判定
navigator.userAgentData.getHighEntropyValues(["platformVersion"])
 .then(ua => {
   if (navigator.userAgentData.platform === "Windows") {
     const majorPlatformVersion = parseInt(ua.platformVersion.split('.')[0]);
     if (majorPlatformVersion >= 13) {
document.getElementById("sampleOS").innerHTML= "Windows 11";
      }
      else if (majorPlatformVersion > 0) {
document.getElementById("sampleOS").innerHTML= "Windows 10";
      }
      else {
document.getElementById("sampleOS").innerHTML= "Before Windows 10";
      }
   }
   else {
document.getElementById("sampleOS").innerHTML= "Not running on Windows";
   }
 });
</script>※「platformVersion」では、Windows 10 の各バージョンの判別が可能になっているようです。

 
  
  
  
  
